Last Msg First Msg
























method net.sourceforge.pebble.domain.Blog__static_init
postinit'ed(log)










method void net.sourceforge.pebble.domain.Blog(String)
postinit'ed(this.blog)
postinit'ed(this.id)
postinit'ed(this.messages)
postinit'ed(this.root)
postnew LinkedList(AbstractBlog#1) num objects == 1
unanalyzedcall on java.util.LinkedList









  infomethod not available-- call on Log org.apache.commons.logging. LogFactory:getLog(Class)










  infocall too complex - analysis skipped-- call on void init()











method void init()
preinit'ed(this.root)
pre(soft) net/sourceforge/pebble/dao/DAOFactory. configuredFactory != null
pre(soft) net/sourceforge/pebble/dao/DAOFactory. configuredFactory.categoryDAO != null
pre(soft) net/sourceforge/pebble/dao/DAOFactory. configuredFactory.refererFilterDAO != null
pre(soft) net/sourceforge/pebble/dao/file/FileRefererF ilterDAO.log != null
pre(soft) net/sourceforge/pebble/domain/AbstractBlog. log != null
pre(soft) this.messages != null
pre(soft) init'ed(this.rootCategory)
presumptionjava.lang.Class:forName(...)@199 != null
presumptionjava.lang.Class:forName(...)@232 != null
presumptionjava.lang.Class:forName(...)@241 != null
postthis.authorIndex == &new AuthorIndex(init#11)
postthis.blogEntryIndex == &new BlogEntryIndex(init #7)
postthis.categoryIndex == &new CategoryIndex(init#1 0)
postthis.commentConfirmationStrategy != null
postthis.decoratorChain == &new ContentDecoratorCha in(init#13)
postthis.emailSubscriptionList == &new EmailSubscriptionList(init#18)
postthis.eventDispatcher != null
postinit'ed(this.eventDispatcher.eventListenerList)
postthis.eventListenerList == &new EventListenerLis t(initEventDispatcher#1)
postinit'ed(this.logger)
postinit'ed(this.messages)
postthis.permalinkProvider != null
postthis.pluginProperties == &new PluginProperties( init#4)
postthis.properties == &new Properties(loadProperti es#1)
postthis.refererFilterManager == &new RefererFilterManager(init#3)
postthis.responseIndex == &new ResponseIndex(init#8 )
post(soft) init'ed(this.rootCategory)
postthis.searchIndex == &new SearchIndex(init#6)
postthis.staticPageIndex == &new StaticPageIndex(in it#12)
postthis.tagIndex == &new TagIndex(init#9)
postthis.trackBackConfirmationStrategy != null
postthis.years == &new ArrayList(init#5)
postnew ArrayList(BlogEntryIndex#1) num objects == 1
postnew ArrayList(BlogEntryIndex#2) num objects == 1
postnew ArrayList(BlogEntryIndex#3) num objects == 1
postnew ArrayList(ContentDecoratorChain#1) num objects == 1
postnew ArrayList(EventListenerList#1) num objects == 1
postnew ArrayList(EventListenerList#2) num objects == 1
postnew ArrayList(EventListenerList#3) num objects == 1
postnew ArrayList(EventListenerList#4) num objects == 1
postnew ArrayList(ResponseIndex#1) num objects == 1
postnew ArrayList(ResponseIndex#2) num objects == 1
postnew ArrayList(ResponseIndex#3) num objects == 1
postnew ArrayList(TagIndex#2) num objects == 1
postnew ArrayList(init#5) num objects == 1
postnew AuthorIndex(init#11) num objects == 1
postnew BlogEntryIndex(init#7) num objects == 1
postnew CategoryIndex(init#10) num objects == 1
postnew ContentDecoratorChain(init#13) num objects == 1
postnew EmailSubscriptionList(init#18) num objects == 1
postnew EventListenerList(initEventDispatcher#1) num objects == 1
postnew HashMap(AuthorIndex#1) num objects == 1
postnew HashMap(StaticPageIndex#1) num objects == 1
postnew HashMap(TagIndex#1) num objects == 1
postnew LinkedList(EmailSubscriptionList#1) num objects == 1
postnew PluginProperties(init#4) num objects == 1
postnew Properties(loadProperties#1) num objects == 1
postnew RefererFilterManager(init#3) num objects == 1
postnew ResponseIndex(init#8) num objects == 1
postnew SearchIndex(init#6) num objects == 1
postnew StaticPageIndex(init#12) num objects == 1
postnew TagIndex(init#9) num objects == 1
postinit'ed(new ArrayList(Category#1) num objects)
postinit'ed(new ArrayList(Category#2) num objects)
postinit'ed(new ArrayList(Category#3) num objects)
postnew ArrayList(getRefererFilters#1) num objects <= 1
postnew ArrayList(readIndex#1) num objects == 3
postnew ArrayList(recalculateTagRankings#2) num objects <= 1
postthis.authorIndex.authors == &new HashMap(AuthorIndex#1)
postthis.authorIndex.blog == this
postthis.authorIndex.blog != null
postthis.blogEntryIndex.blog == this.authorIndex.blog
postthis.categoryIndex.blog == this.authorIndex.blog
postthis.decoratorChain.blog == this.authorIndex.blog
postthis.emailSubscriptionList.blog == this. authorIndex.blog
postthis.refererFilterManager.rootBlog == this.authorIndex.blog
postthis.responseIndex.blog == this.authorIndex.blog
postthis.searchIndex.blog == this.authorIndex.blog
postthis.staticPageIndex.blog == this.authorIndex.blog
postthis.tagIndex.blog == this.authorIndex.blog
postthis.blogEntryIndex.indexEntries == &new ArrayList(BlogEntryIndex#1)
postthis.blogEntryIndex.publishedIndexEntries == &new ArrayList(BlogEntryIndex#2)
postthis.blogEntryIndex.unpublishedIndexEntries == &new ArrayList(BlogEntryIndex#3)
postinit'ed(new Category(getCategory#2*) num objects)
postinit'ed(new Category(getCategory#2*).blog)
postinit'ed(new Category(getCategory#2*).blogEntries)
postinit'ed(new Category(getCategory#2*).id)
postinit'ed(new Category(getCategory#2*).name)
postinit'ed(new Category(getCategory#2*).parent)
postinit'ed(new Category(getCategory#2*). subCategories)
postinit'ed(new Category(getCategory#2*).tags)
postinit'ed(new Category(getCategory#2*).tagsAsList)
postinit'ed(new Category(getCategory#3*) num objects)
postinit'ed(new Category(getCategory#3*).blog)
postinit'ed(new Category(getCategory#3*).blogEntries)
postinit'ed(new Category(getCategory#3*).id)
postinit'ed(new Category(getCategory#3*).name)
postinit'ed(new Category(getCategory#3*).parent)
postinit'ed(new Category(getCategory#3*). subCategories)
postinit'ed(new Category(getCategory#3*).tags)
postinit'ed(new Category(getCategory#3*).tagsAsList)
postnew CombinedLogFormatLogger(initLogger#4) num objects <= 1
postthis.decoratorChain.decorators == &new ArrayList(ContentDecoratorChain#1)
postnew DefaultConfirmationStrategy(init#15) num objects <= 1
postnew DefaultConfirmationStrategy(init#17) num objects <= 1
postnew DefaultEventDispatcher(initEventDispatcher#2) num objects <= 1
postinit'ed(new DefaultEventDispatcher(initEventDispatc her#2).eventListenerList)
postnew DefaultPermalinkProvider(init#2) num objects <= 1
postthis.emailSubscriptionList.emailAddresses == &new LinkedList(EmailSubscriptionList#1)
postthis.eventListenerList.blogEntryListeners == &new ArrayList(EventListenerList#2)
postthis.eventListenerList.blogListeners == &new ArrayList(EventListenerList#1)
postthis.eventListenerList.commentListeners == &new ArrayList(EventListenerList#3)
postthis.eventListenerList.trackBackListeners == &new ArrayList(EventListenerList#4)
postthis.refererFilterManager.filters == One-of{&new ArrayList(getRefererFilters#1), undefined}
postthis.refererFilterManager.filters in Addr_Set{null,&new ArrayList(getRefererFilters #1)}
postinit'ed(this.refererFilterManager.nextId)
postthis.responseIndex.approvedResponses == &new ArrayList(readIndex#1)
postthis.responseIndex.pendingResponses == &new ArrayList(readIndex#1)
postthis.responseIndex.rejectedResponses == &new ArrayList(readIndex#1)
postthis.staticPageIndex.index == &new HashMap(StaticPageIndex#1)
postinit'ed(this.staticPageIndex.lockAttempts)
postthis.tagIndex.orderedTags == One-of{&new ArrayList(TagIndex#2), &new ArrayList(recalcul ateTagRankings#2)}
postthis.tagIndex.orderedTags in Addr_Set{&new ArrayList(TagIndex#2),&new ArrayList(recalcula teTagRankings#2)}
postthis.tagIndex.tags == &new HashMap(TagIndex#1)
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.util.Properties
unanalyzedcall on java.util.Properties:setProperty
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.String:replaceAll
unanalyzedcall on encode
unanalyzedcall on getCategory
unanalyzedcall on getSubCategories
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.lang.String:startsWith
unanalyzedcall on java.lang.String:equals
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getLocale
unanalyzedcall on net.sourceforge.pebble.util. I18n:getMessage
unanalyzedcall on net.sourceforge.pebble.domain.Category
unanalyzedcall on addCategory
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:substring
unanalyzedcall on getId
unanalyzedcall on java.lang.String:lastIndexOf
unanalyzedcall on setBlog
unanalyzedcall on isRootCategory
unanalyzedcall on addSubCategory
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.ArrayList
unanalyzedcall on getConfiguredFactory
unanalyzedcall on java.util.List:add
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on getStringsFromProperty
unanalyzedcall on getTimeZone
unanalyzedcall on getLocale
unanalyzedcall on java.util.Calendar:getInstance
unanalyzedcall on java.util.Locale
unanalyzedcall on java.util.TimeZone:getTimeZone
unanalyzedcall on java.util.Calendar:get
unanalyzedcall on getBlogForMonth
unanalyzedcall on getBlogForDay
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on getBlogEntryListeners
unanalyzedcall on java.lang.Class:forName
unanalyzedcall on java.lang.Class:newInstance
unanalyzedcall on java.util.List:contains
unanalyzedcall on java.lang.Object:getClass
unanalyzedcall on java.lang.Class:getName
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:subList
unanalyzedcall on net.sourceforge.pebble.util. SecurityUtils:getUsername
unanalyzedcall on java.util.Date
unanalyzedcall on net.sourceforge.pebble.event.blogentry. BlogEntryListenerSupport
unanalyzedcall on org.apache.commons.logging.Log:warn
unanalyzedcall on java.lang.Throwable:getMessage
unanalyzedcall on java.io.File
unanalyzedcall on java.io.File:exists
unanalyzedcall on getDefaultProperties
unanalyzedcall on java.io.FileInputStream
unanalyzedcall on java.util.Properties:load
unanalyzedcall on java.io.FileInputStream:close
unanalyzedcall on java.lang.Exception:printStackTrace
unanalyzedcall on getRefererFilterDAO
unanalyzedcall on java.util.Collection:iterator
unanalyzedcall on net.sourceforge.pebble.dao.PersistenceExcep tion:printStackTrace
unanalyzedcall on getRefererFilters
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getIndexesDirectory
unanalyzedcall on addPublishedBlogEntry
unanalyzedcall on addUnpublishedBlogEntry
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on java.io.FileReader
unanalyzedcall on java.io.BufferedReader
unanalyzedcall on java.io.BufferedReader:readLine
unanalyzedcall on java.lang.Long:parseLong
unanalyzedcall on java.io.BufferedReader:close
unanalyzedcall on java.util.Map:get
unanalyzedcall on net.sourceforge.pebble.index.IndexedTag
unanalyzedcall on java.util.Map:put
unanalyzedcall on java.util.HashMap
unanalyzedcall on java.util.Map:values
unanalyzedcall on addBlogEntry
unanalyzedcall on java.util.Map:size
unanalyzedcall on getNumberOfBlogEntries
unanalyzedcall on java.lang.Math:round
unanalyzedcall on calculateRank
unanalyzedcall on java.util.LinkedList
unanalyzedcall on org.apache.commons.logging.Log:info
unanalyzedcall on java.io.File:mkdirs
unanalyzedcall on net.sourceforge.pebble.confirmation. AbstractConfirmationStrategy
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on net.sourceforge.pebble.decorator. ContentDecoratorSupport
unanalyzedcall on getContentDecorators
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on net.sourceforge.pebble.api.event. EventDispatcher
unanalyzedcall on java.lang.Class:getConstructor
unanalyzedcall on java.lang.reflect.Constructor:newInstance
unanalyzedcall on net.sourceforge.pebble.logging. CombinedLogFormatLogger
unanalyzedcall on java.util.Collections:unmodifiableList
unanalyzedcall on net.sourceforge.pebble.domain.Blog:getRoot
unanalyzedcall on java.util.regex.Pattern:compile
unanalyzedcall on java.util.ArrayList:add
unanalyzedcall on java.util.List:remove
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog









  infomethod not available-- call on void net.sourceforge.pebble.permalink. DefaultPermalinkProvider()










  infomethod not available-- call on CategoryDAO getCategoryDAO()










  infomethod not available-- call on Category getCategories(Blog)










  infomethod not available-- call on void net.sourceforge.pebble.dao. PersistenceException:printStackTrace()










  infomethod not available-- call on void net.sourceforge.pebble. PluginProperties(Blog)










Prev Msg Next Msg
+
medium
precondition failurenet/sourceforge/pebble/domain/AbstractBlog.error: this.messages != null
Prev Msg Next Msg










Prev Msg Next Msg
+
medium
precondition failurenet/sourceforge/pebble/domain/AbstractBlog.error: this.messages != null
Prev Msg Next Msg











method void initLogger()
prethis.properties != null
pre(soft) net/sourceforge/pebble/domain/AbstractBlog. log != null
pre(soft) this.messages != null
presumptionjava.lang.Class:forName(...)@267 != null
presumptionjava.lang.Class:getConstructor(...)@268 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postinit'ed(this.logger)
postinit'ed(this.messages)
postnew CombinedLogFormatLogger(initLogger#4) num objects <= 1
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:subList
unanalyzedcall on net.sourceforge.pebble.util. SecurityUtils:getUsername
unanalyzedcall on java.util.Date
unanalyzedcall on java.util.List:add
unanalyzedcall on org.apache.commons.logging.Log:error









  infomethod not available-- call on void org.apache.commons.logging. Log:debug(Object)










  infomethod not available-- call on void net.sourceforge.pebble.logging. CombinedLogFormatLogger(Blog)











method void initEventDispatcher()
pre(soft) this.properties != null
presumptionjava.lang.Class:forName(...)@285 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postthis.eventDispatcher != null
postinit'ed(this.eventDispatcher.eventListenerList)
postthis.eventListenerList == &new EventListenerLis t(initEventDispatcher#1)
postnew ArrayList(EventListenerList#1) num objects == 1
postnew ArrayList(EventListenerList#2) num objects == 1
postnew ArrayList(EventListenerList#3) num objects == 1
postnew ArrayList(EventListenerList#4) num objects == 1
postnew EventListenerList(initEventDispatcher#1) num objects == 1
postnew DefaultEventDispatcher(initEventDispatcher#2) num objects <= 1
postinit'ed(new DefaultEventDispatcher(initEventDispatc her#2).eventListenerList)
postthis.eventListenerList.blogEntryListeners == &new ArrayList(EventListenerList#2)
postthis.eventListenerList.blogListeners == &new ArrayList(EventListenerList#1)
postthis.eventListenerList.commentListeners == &new ArrayList(EventListenerList#3)
postthis.eventListenerList.trackBackListeners == &new ArrayList(EventListenerList#4)
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.util.ArrayList
unanalyzedcall on net.sourceforge.pebble.api.event. EventDispatcher









  infomethod not available-- call on void org.apache.commons.logging. Log:debug(Object)











method void initBlogListeners()
prethis.properties != null
pre(soft) net/sourceforge/pebble/domain/AbstractBlog. log != null
pre(soft) this.messages != null
pre(soft) this.eventListenerList != null
pre(soft) this.eventListenerList.blogListeners != null
presumptionjava.lang.Class:forName(...)@303 != null
presumptionjava.util.Iterator:next(...)@301 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postinit'ed(this.messages)
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getStringsFromProperty
unanalyzedcall on java.util.List:contains
unanalyzedcall on java.lang.Object:getClass
unanalyzedcall on java.lang.Class:getName
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:subList
unanalyzedcall on net.sourceforge.pebble.util. SecurityUtils:getUsername
unanalyzedcall on java.util.Date
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:startsWith
test_vectorjava.util.Iterator:hasNext(...)@301: {1}, {0}









  infomethod not available-- call on void org.apache.commons.logging. Log:debug(Object)










Prev Msg Next Msg
+
medium
precondition failurenet/sourceforge/pebble/domain/AbstractBlog.error: this.messages != null
Prev Msg Next Msg










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method void initBlogEntryListeners()
prethis.eventListenerList != null
prethis.eventListenerList.blogEntryListeners != null
prethis.properties != null
pre(soft) net/sourceforge/pebble/domain/AbstractBlog. log != null
pre(soft) this.messages != null
presumptionjava.lang.Class:forName(...)@321 != null
presumptionjava.lang.Throwable:getMessage(...)@344 != null
presumptionjava.util.Iterator:next(...)@319 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postinit'ed(this.messages)
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.util.List:contains
unanalyzedcall on java.lang.Object:getClass
unanalyzedcall on java.lang.Class:getName
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:subList
unanalyzedcall on net.sourceforge.pebble.util. SecurityUtils:getUsername
unanalyzedcall on java.util.Date
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on net.sourceforge.pebble.event.blogentry. BlogEntryListenerSupport
unanalyzedcall on org.apache.commons.logging.Log:warn
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:startsWith
test_vectorjava.util.Iterator:hasNext(...)@319: {1}, {0}









  infomethod not available-- call on void org.apache.commons.logging. Log:debug(Object)










Prev Msg Next Msg
+
medium
precondition failurenet/sourceforge/pebble/domain/AbstractBlog.error: this.messages != null
Prev Msg Next Msg










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)










Prev Msg Next Msg
+
warning
unused assignmentunused assignment into text
Prev Msg Next Msg










Prev Msg Next Msg
+
medium
precondition failurenet/sourceforge/pebble/domain/AbstractBlog.warn: this.messages != null
Prev Msg Next Msg










  infomethod not available-- call on void org.apache.commons.logging. Log:warn(Object)










  infomethod not available-- call on void org.apache.commons.logging. Log:warn(Object, Throwable)











method void initCommentListeners()
prethis.eventListenerList != null
prethis.eventListenerList.commentListeners != null
prethis.properties != null
pre(soft) net/sourceforge/pebble/domain/AbstractBlog. log != null
pre(soft) this.messages != null
presumptionjava.lang.Class:forName(...)@360 != null
presumptionjava.util.Iterator:next(...)@358 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postinit'ed(this.messages)
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getStringsFromProperty
unanalyzedcall on java.util.List:contains
unanalyzedcall on java.lang.Object:getClass
unanalyzedcall on java.lang.Class:getName
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:subList
unanalyzedcall on net.sourceforge.pebble.util. SecurityUtils:getUsername
unanalyzedcall on java.util.Date
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:startsWith
test_vectorjava.util.Iterator:hasNext(...)@358: {1}, {0}









  infomethod not available-- call on void org.apache.commons.logging. Log:debug(Object)










Prev Msg Next Msg
+
medium
precondition failurenet/sourceforge/pebble/domain/AbstractBlog.error: this.messages != null
Prev Msg Next Msg










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method void initTrackBackListeners()
prethis.eventListenerList != null
prethis.eventListenerList.trackBackListeners != null
prethis.properties != null
pre(soft) net/sourceforge/pebble/domain/AbstractBlog. log != null
pre(soft) this.messages != null
presumptionjava.lang.Class:forName(...)@381 != null
presumptionjava.util.Iterator:next(...)@379 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postinit'ed(this.messages)
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getStringsFromProperty
unanalyzedcall on java.util.List:contains
unanalyzedcall on java.lang.Object:getClass
unanalyzedcall on java.lang.Class:getName
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:subList
unanalyzedcall on net.sourceforge.pebble.util. SecurityUtils:getUsername
unanalyzedcall on java.util.Date
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:startsWith
test_vectorjava.util.Iterator:hasNext(...)@379: {1}, {0}









  infomethod not available-- call on void org.apache.commons.logging. Log:debug(Object)










Prev Msg Next Msg
+
medium
precondition failurenet/sourceforge/pebble/domain/AbstractBlog.error: this.messages != null
Prev Msg Next Msg










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method void initDecorators()
prethis.decoratorChain != null
prethis.decoratorChain.decorators != null
prethis.properties != null
pre(soft) net/sourceforge/pebble/domain/AbstractBlog. log != null
pre(soft) this.messages != null
presumptionjava.lang.Class:forName(...)@404 != null
presumptionjava.util.Iterator:next(...)@402 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postinit'ed(this.messages)
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getStringsFromProperty
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:subList
unanalyzedcall on net.sourceforge.pebble.util. SecurityUtils:getUsername
unanalyzedcall on java.util.Date
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on java.lang.String:length
unanalyzedcall on net.sourceforge.pebble.decorator. ContentDecoratorSupport
unanalyzedcall on java.lang.String:startsWith
test_vectorjava.util.Iterator:hasNext(...)@402: {1}, {0}









  infomethod not available-- call on void org.apache.commons.logging. Log:debug(Object)










  infomethod not available-- call on void setBlog(Blog)










Prev Msg Next Msg
+
medium
precondition failurenet/sourceforge/pebble/domain/AbstractBlog.error: this.messages != null
Prev Msg Next Msg










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method Properties getDefaultProperties()
postreturn_value == &new Properties(getDefaultPrope rties#1)
postnew Properties(getDefaultProperties#1) num objects == 1










method String getId()
preinit'ed(this.id)
postreturn_value == this.id
postinit'ed(return_value)










method void setId(String)
postthis.id == id
postinit'ed(this.id)










method String getUrl()
pre(soft) net/sourceforge/pebble/domain/BlogManager. instance != null
pre(soft) init'ed(net/sourceforge/pebble/domain/BlogMa nager.instance.multiBlog)
pre(soft) init'ed(this.id)
presumptionjava.lang.String:indexOf(...)@503 <= 232-4
presumptionnet.sourceforge.pebble.PebbleContext:getConfigurati on(...)@496 != null
presumptionnet.sourceforge.pebble.PebbleContext:getInstance(.. .)@496 != null
postreturn_value != null
test_vectornet/sourceforge/pebble/domain/BlogManager.instance. multiBlog: {0}, {1}
test_vectorconfig.url@496: Addr_Set{null}, Inverse{null}
test_vectorconfig.virtualHostingEnabled@496: {0}, {1}
test_vectorjava.lang.String:length(...)@499: {1.. 232-1}, {0}









  infomethod not available-- call on PebbleContext net.sourceforge.pebble. PebbleContext:getInstance()
  infomethod not available-- call on Configuration net.sourceforge.pebble. PebbleContext:getConfiguration()











method String getRelativeUrl()
prenet/sourceforge/pebble/domain/BlogManager.instance != null
preinit'ed(net/sourceforge/pebble/domain/BlogManager. instance.multiBlog)
pre(soft) init'ed(this.id)
postreturn_value != null
test_vectornet/sourceforge/pebble/domain/BlogManager.instance. multiBlog: {0}, {1}










method String getAbout()
prethis.properties != null
postinit'ed(return_value)










method String getHomePage()
prethis.properties != null
postinit'ed(return_value)










method String getEmail()
prethis.properties != null
postinit'ed(return_value)










method Collection getEmailAddresses()
prethis.properties != null
presumptionjava.util.Properties:getProperty(...)@549 != null
postinit'ed(return_value)
unanalyzedcall on java.util.Properties:getProperty










method String getFirstEmailAddress()
prethis.properties != null
postinit'ed(return_value)
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.Arrays:asList
test_vectorjava.util.Arrays:asList(...)@558: Addr_Set{null}, Inverse{null}
test_vectorjava.util.Collection:isEmpty(...)@568: {1}, {0}










method String getBlogOwnersAsString()
prethis.properties != null
postinit'ed(return_value)










method List getBlogOwners()
prethis.properties != null
presumptionjava.util.StringTokenizer:nextToken(...)@596 != null
postreturn_value == &new LinkedList(getBlogOwners#1 )
postnew LinkedList(getBlogOwners#1) num objects == 1
unanalyzedcall on java.util.Properties:getProperty
test_vectorjava.util.Properties:getProperty(...)@582: Addr_Set{null}, Inverse{null}
test_vectorjava.util.StringTokenizer:hasMoreTokens(...)@595: {1}, {0}










method String getBlogPublishersAsString()
prethis.properties != null
postinit'ed(return_value)










method List getBlogPublishers()
prethis.properties != null
presumptionjava.util.StringTokenizer:nextToken(...)@624 != null
postreturn_value == &new LinkedList(getBlogPublishe rs#1)
postnew LinkedList(getBlogPublishers#1) num objects == 1
unanalyzedcall on java.util.Properties:getProperty
test_vectorjava.util.Properties:getProperty(...)@610: Addr_Set{null}, Inverse{null}
test_vectorjava.util.StringTokenizer:hasMoreTokens(...)@623: {1}, {0}










method String getBlogContributorsAsString()
prethis.properties != null
postinit'ed(return_value)










method List getBlogContributors()
prethis.properties != null
presumptionjava.util.StringTokenizer:nextToken(...)@652 != null
postreturn_value == &new LinkedList(getBlogContribu tors#1)
postnew LinkedList(getBlogContributors#1) num objects == 1
unanalyzedcall on java.util.Properties:getProperty
test_vectorjava.util.Properties:getProperty(...)@638: Addr_Set{null}, Inverse{null}
test_vectorjava.util.StringTokenizer:hasMoreTokens(...)@651: {1}, {0}










method String getBlogReadersAsString()
prethis.properties != null
postinit'ed(return_value)










method List getBlogReaders()
prethis.properties != null
presumptionjava.util.StringTokenizer:nextToken(...)@680 != null
postreturn_value == &new LinkedList(getBlogReaders# 1)
postnew LinkedList(getBlogReaders#1) num objects == 1
unanalyzedcall on java.util.Properties:getProperty
test_vectorjava.util.Properties:getProperty(...)@666: Addr_Set{null}, Inverse{null}
test_vectorjava.util.StringTokenizer:hasMoreTokens(...)@679: {1}, {0}










method String getLuceneAnalyzer()
prethis.properties != null
postinit'ed(return_value)










method String getLoggerName()
prethis.properties != null
postinit'ed(return_value)










method Collection getUsersInRole(String)
preinit'ed(net/sourceforge/pebble/Constants.BLOG_ OWNER_ROLE)
preroleName != null
pre(soft) init'ed(net/sourceforge/pebble/Constants. BLOG_CONTRIBUTOR_ROLE)
pre(soft) init'ed(net/sourceforge/pebble/Constants. BLOG_PUBLISHER_ROLE)
pre(soft) init'ed(net/sourceforge/pebble/Constants. BLOG_READER_ROLE)
pre(soft) this.properties != null
postreturn_value == One-of{&new LinkedList(getBlogO wners#1), &new LinkedList(getBlogPublishers#1), &new LinkedList(getBlogContributors#1), &new LinkedList(getUsersInRole#1), &new LinkedList(getBlogReaders#1)}
postreturn_value in Addr_Set{&new LinkedList(getUse rsInRole#1),&new LinkedList(getBlogContributors #1),&new LinkedList(getBlogReaders#1),&new LinkedList(getBlogOwners#1),&new LinkedList(getBlogPublishers#1)}
postnew LinkedList(getBlogContributors#1) num objects <= 1
postnew LinkedList(getBlogOwners#1) num objects <= 1
postnew LinkedList(getBlogPublishers#1) num objects <= 1
postnew LinkedList(getBlogReaders#1) num objects <= 1
postnew LinkedList(getUsersInRole#1) num objects == 1
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.util.List:add
unanalyzedcall on java.util.LinkedList
unanalyzedcall on java.util.StringTokenizer
unanalyzedcall on java.util.StringTokenizer:hasMoreTokens
unanalyzedcall on java.util.StringTokenizer:nextToken
unanalyzedcall on java.lang.String:trim
test_vectorjava.lang.String:equals(...)@714: {0}, {1}
test_vectorjava.lang.String:equals(...)@716: {0}, {1}
test_vectorjava.lang.String:equals(...)@718: {0}, {1}
test_vectorjava.lang.String:equals(...)@720: {0}, {1}










method bool isUserInRole(String, String)
preinit'ed(net/sourceforge/pebble/Constants.BLOG_ OWNER_ROLE)
preroleName != null
pre(soft) init'ed(net/sourceforge/pebble/Constants. BLOG_CONTRIBUTOR_ROLE)
pre(soft) init'ed(net/sourceforge/pebble/Constants. BLOG_PUBLISHER_ROLE)
pre(soft) init'ed(net/sourceforge/pebble/Constants. BLOG_READER_ROLE)
pre(soft) this.properties != null
postinit'ed(return_value)
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.util.List:add
unanalyzedcall on java.util.LinkedList
unanalyzedcall on java.util.StringTokenizer
unanalyzedcall on java.util.StringTokenizer:hasMoreTokens
unanalyzedcall on java.util.StringTokenizer:nextToken
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.lang.String:equals
unanalyzedcall on getBlogPublishers
unanalyzedcall on getBlogReaders
test_vectorjava.util.Collection:contains(...)@737: {0}, {1}
test_vectorjava.util.Collection:isEmpty(...)@737: {1}, {0}










method Year getBlogForYear(int)
prethis.years != null
presumptionjava.util.Iterator:next(...)@754 != null
post(soft) return_value != null
postinit'ed(new ArrayList(Day#1) num objects)
postinit'ed(new ArrayList(Day#2) num objects)
postinit'ed(new ArrayList(Day#3) num objects)
postinit'ed(new Day(Month#2) num objects)
postinit'ed(new Day(Month#2).blog)
postinit'ed(new Day(Month#2).blogEntries)
postinit'ed(new Day(Month#2).date)
postinit'ed(new Day(Month#2).day)
postinit'ed(new Day(Month#2).month)
postinit'ed(new Day(Month#2).publishedBlogEntries)
postinit'ed(new Day(Month#2).unpublishedBlogEntries)
postnew Day[](Month#1) num objects in {0, 12}
postinit'ed(new Day[](Month#1).length)
postinit'ed(new Day[](Month#1)[...])
postnew Month(init#2) num objects in {0, 12}
postnew Month(init#2).blog != null
postnew Month(init#2).dailyBlogs != null
postinit'ed(new Month(init#2).date)
postinit'ed(new Month(init#2).lastDayInMonth)
postnew Month(init#2).month == 13
postnew Month(init#2).year != null
postnew Month[](init#1) num objects <= 1
postnew Month[](init#1).length == 12
postinit'ed(new Month[](init#1)[...])
postnew Year(getBlogForYear#1) num objects <= 1
postnew Year(getBlogForYear#1).blog != null
postinit'ed(new Year(getBlogForYear#1).date)
postnew Year(getBlogForYear#1).months == &new Month[](init#1)
postnew Year(getBlogForYear#1).year == year
postinit'ed(new Year(getBlogForYear#1).year)
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on java.util.ArrayList
test_vectorjava.util.Iterator:hasNext(...)@753: {1}, {0}










method Year getBlogForThisYear()
prethis.properties != null
prethis.years != null
presumptionjava.util.Calendar:getInstance(...)@329 != null
postreturn_value != null
postinit'ed(new ArrayList(Day#1) num objects)
postinit'ed(new ArrayList(Day#2) num objects)
postinit'ed(new ArrayList(Day#3) num objects)
postinit'ed(new Day(Month#2) num objects)
postinit'ed(new Day(Month#2).blog)
postinit'ed(new Day(Month#2).blogEntries)
postinit'ed(new Day(Month#2).date)
postinit'ed(new Day(Month#2).day)
postinit'ed(new Day(Month#2).month)
postinit'ed(new Day(Month#2).publishedBlogEntries)
postinit'ed(new Day(Month#2).unpublishedBlogEntries)
postnew Day[](Month#1) num objects in {0, 12}
postinit'ed(new Day[](Month#1).length)
postinit'ed(new Day[](Month#1)[...])
postnew Month(init#2) num objects in {0, 12}
postnew Month(init#2).blog != null
postnew Month(init#2).dailyBlogs != null
postinit'ed(new Month(init#2).date)
postinit'ed(new Month(init#2).lastDayInMonth)
postnew Month(init#2).month == 13
postnew Month(init#2).year != null
postnew Month[](init#1) num objects <= 1
postnew Year(getBlogForYear#1) num objects == new Month[](init#1) num objects
postnew Year(getBlogForYear#1).months.length == 12
postinit'ed(new Year(getBlogForYear#1).months[...])
postnew Year(getBlogForYear#1).blog != null
postinit'ed(new Year(getBlogForYear#1).date)
postnew Year(getBlogForYear#1).months == &new Month[](init#1)
postinit'ed(new Year(getBlogForYear#1).year)
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getTimeZone
unanalyzedcall on getLocale
unanalyzedcall on java.util.Calendar:getInstance
unanalyzedcall on java.util.Locale
unanalyzedcall on java.util.TimeZone:getTimeZone
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on java.util.ArrayList










method List getYears()
preinit'ed(this.years)
postreturn_value == this.years
postinit'ed(return_value)










method List getArchives()
preinit'ed(this.blogEntryIndex)
prethis.years != null
pre(soft) init'ed(this.blogEntryIndex.indexEntries)
pre(soft) this.properties != null
presumptiongetBlogForFirstMonth(...).year@793 != null
presumptionjava.util.Iterator:next(...)@797 != null
postreturn_value == &new LinkedList(getArchives#1)
postnew LinkedList(getArchives#1) num objects == 1
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:get
unanalyzedcall on java.util.Date
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getTimeZone
unanalyzedcall on getLocale
unanalyzedcall on java.util.Calendar:getInstance
unanalyzedcall on java.util.Locale
unanalyzedcall on java.util.TimeZone:getTimeZone
unanalyzedcall on java.util.Calendar:get
unanalyzedcall on getBlogForMonth
unanalyzedcall on java.util.List:isEmpty
unanalyzedcall on java.lang.Long:parseLong
unanalyzedcall on getBlogForDay
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on getBlogForYear
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
test_vectorjava.util.Iterator:hasNext(...)@797: {1}, {0}









Prev Msg Next Msg
+
medium
null dereferencecheck might fail: requires getBlogForFirstMonth(... ) != null
Prev Msg Next Msg










Prev Msg Next Msg
+
warning
unused assignmentunused assignment into cal
Prev Msg Next Msg











method Month getBlogForFirstMonth()
preinit'ed(this.blogEntryIndex)
pre(soft) init'ed(this.blogEntryIndex.indexEntries)
pre(soft) this.properties != null
pre(soft) this.years != null
presumptionjava.util.List:size(...)@822 >= -231+1
postinit'ed(return_value)
postinit'ed(new ArrayList(Day#1) num objects)
postinit'ed(new ArrayList(Day#2) num objects)
postinit'ed(new ArrayList(Day#3) num objects)
postinit'ed(new Day(Month#2) num objects)
postinit'ed(new Day(Month#2).blog)
postinit'ed(new Day(Month#2).blogEntries)
postinit'ed(new Day(Month#2).date)
postinit'ed(new Day(Month#2).day)
postinit'ed(new Day(Month#2).month)
postinit'ed(new Day(Month#2).publishedBlogEntries)
postinit'ed(new Day(Month#2).unpublishedBlogEntries)
postnew Day[](Month#1) num objects in {0, 12}
postinit'ed(new Day[](Month#1).length)
postinit'ed(new Day[](Month#1)[...])
postnew Month(init#2) num objects in {0, 12}
postnew Month(init#2).blog != null
postnew Month(init#2).dailyBlogs != null
postinit'ed(new Month(init#2).date)
postinit'ed(new Month(init#2).lastDayInMonth)
postnew Month(init#2).month == 13
postnew Month(init#2).year != null
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getTimeZone
unanalyzedcall on getLocale
unanalyzedcall on java.util.Calendar:getInstance
unanalyzedcall on java.util.Locale
unanalyzedcall on java.util.TimeZone:getTimeZone
unanalyzedcall on java.util.Calendar:get
unanalyzedcall on getBlogForMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on getBlogForDay
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
test_vectorthis.blogEntryIndex: Inverse{null}, Addr_Set{null}
test_vectorjava.util.List:get(...)@822: Inverse{null}, Addr_Set{null}
test_vectorjava.util.List:isEmpty(...)@818: {0}, {1}









Prev Msg Next Msg
+
warning
test always goes same waytest predetermined because blogEntryIds != null
Prev Msg Next Msg










Prev Msg Next Msg
+
medium
null dereferencecheck might fail: requires getBlogForDay(...) != null
Prev Msg Next Msg











method Day getBlogForDay(Date)
prethis.properties != null
prethis.years != null
presumptionjava.util.Calendar:get(...)@843 in 0..11
presumptionjava.util.Calendar:get(...)@844 >= 1
presumptionjava.util.Calendar:getInstance(...)@329 != null
postinit'ed(return_value)
postinit'ed(new ArrayList(Day#1) num objects)
postinit'ed(new ArrayList(Day#2) num objects)
postinit'ed(new ArrayList(Day#3) num objects)
postinit'ed(new Day(Month#2) num objects)
postinit'ed(new Day(Month#2).blog)
postinit'ed(new Day(Month#2).blogEntries)
postinit'ed(new Day(Month#2).date)
postinit'ed(new Day(Month#2).day)
postinit'ed(new Day(Month#2).month)
postinit'ed(new Day(Month#2).publishedBlogEntries)
postinit'ed(new Day(Month#2).unpublishedBlogEntries)
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getTimeZone
unanalyzedcall on getLocale
unanalyzedcall on java.util.Calendar:getInstance
unanalyzedcall on java.util.Locale
unanalyzedcall on java.util.TimeZone:getTimeZone
unanalyzedcall on getBlogForMonth
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on java.util.ArrayList










method Day getBlogForToday()
prethis.properties != null
prethis.years != null
presumptionjava.util.Calendar:getInstance(...)@329 != null
postinit'ed(return_value)
postinit'ed(new ArrayList(Day#1) num objects)
postinit'ed(new ArrayList(Day#2) num objects)
postinit'ed(new ArrayList(Day#3) num objects)
postinit'ed(new Day(Month#2) num objects)
postinit'ed(new Day(Month#2).blog)
postinit'ed(new Day(Month#2).blogEntries)
postinit'ed(new Day(Month#2).date)
postinit'ed(new Day(Month#2).day)
postinit'ed(new Day(Month#2).month)
postinit'ed(new Day(Month#2).publishedBlogEntries)
postinit'ed(new Day(Month#2).unpublishedBlogEntries)
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getTimeZone
unanalyzedcall on getLocale
unanalyzedcall on java.util.Calendar:getInstance
unanalyzedcall on java.util.Locale
unanalyzedcall on java.util.TimeZone:getTimeZone
unanalyzedcall on java.util.Calendar:get
unanalyzedcall on getBlogForMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on getBlogForDay
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on java.util.ArrayList










method Day getBlogForDay(int, int, int)
preday >= 1
premonth in 1..12
prethis.years != null
presumptiongetBlogForMonth(...).dailyBlogs.length@867 >= 1
presumptiongetBlogForMonth(...).dailyBlogs@867 != null
presumptiongetBlogForMonth(...).lastDayInMonth@867 >= 1
postinit'ed(return_value)
postinit'ed(new ArrayList(Day#1) num objects)
postinit'ed(new ArrayList(Day#2) num objects)
postinit'ed(new ArrayList(Day#3) num objects)
postinit'ed(new Day(Month#2) num objects)
postinit'ed(new Day(Month#2).blog)
postinit'ed(new Day(Month#2).blogEntries)
postinit'ed(new Day(Month#2).date)
postinit'ed(new Day(Month#2).day)
postinit'ed(new Day(Month#2).month)
postinit'ed(new Day(Month#2).publishedBlogEntries)
postinit'ed(new Day(Month#2).unpublishedBlogEntries)
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on java.util.ArrayList









Prev Msg Next Msg
+
medium
null dereferencecheck might fail: requires getBlogForMonth(...) != null
+
low
precondition failurenet/sourceforge/pebble/domain/Month.getBlogForDay: this.dailyBlogs.length >= 1
+
low
precondition failurenet/sourceforge/pebble/domain/Month.getBlogForDay: day <= this.dailyBlogs.length
+
low
precondition failurenet/sourceforge/pebble/domain/Month.getBlogForDay: this.lastDayInMonth >= 1
+
low
precondition failurenet/sourceforge/pebble/domain/Month.getBlogForDay: this.lastDayInMonth - day in 0..232-2
Prev Msg Next Msg











method Month getBlogForMonth(int, int)
premonth in 1..12
prethis.years != null
presumptiongetBlogForYear(...).months.length@878 >= 1
presumptionmonth <= getBlogForYear(...).months.length@878
presumptiongetBlogForYear(...).months@878 != null
postinit'ed(return_value)
postinit'ed(new ArrayList(Day#1) num objects)
postinit'ed(new ArrayList(Day#2) num objects)
postinit'ed(new ArrayList(Day#3) num objects)
postinit'ed(new Day(Month#2) num objects)
postinit'ed(new Day(Month#2).blog)
postinit'ed(new Day(Month#2).blogEntries)
postinit'ed(new Day(Month#2).date)
postinit'ed(new Day(Month#2).day)
postinit'ed(new Day(Month#2).month)
postinit'ed(new Day(Month#2).publishedBlogEntries)
postinit'ed(new Day(Month#2).unpublishedBlogEntries)
postnew Day[](Month#1) num objects in {0, 12}
postinit'ed(new Day[](Month#1).length)
postinit'ed(new Day[](Month#1)[...])
postnew Month(init#2) num objects in {0, 12}
postnew Month(init#2).blog != null
postnew Month(init#2).dailyBlogs != null
postinit'ed(new Month(init#2).date)
postinit'ed(new Month(init#2).lastDayInMonth)
postnew Month(init#2).month == 13
postnew Month(init#2).year != null
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on java.util.ArrayList










method Month getBlogForThisMonth()
prethis.properties != null
prethis.years != null
presumptionjava.util.Calendar:get(...)@888 in 0..11
presumptionjava.util.Calendar:getInstance(...)@329 != null
postinit'ed(return_value)
postinit'ed(new ArrayList(Day#1) num objects)
postinit'ed(new ArrayList(Day#2) num objects)
postinit'ed(new ArrayList(Day#3) num objects)
postinit'ed(new Day(Month#2) num objects)
postinit'ed(new Day(Month#2).blog)
postinit'ed(new Day(Month#2).blogEntries)
postinit'ed(new Day(Month#2).date)
postinit'ed(new Day(Month#2).day)
postinit'ed(new Day(Month#2).month)
postinit'ed(new Day(Month#2).publishedBlogEntries)
postinit'ed(new Day(Month#2).unpublishedBlogEntries)
postnew Day[](Month#1) num objects in {0, 12}
postinit'ed(new Day[](Month#1).length)
postinit'ed(new Day[](Month#1)[...])
postnew Month(init#2) num objects in {0, 12}
postnew Month(init#2).blog != null
postnew Month(init#2).dailyBlogs != null
postinit'ed(new Month(init#2).date)
postinit'ed(new Month(init#2).lastDayInMonth)
postnew Month(init#2).month == 13
postnew Month(init#2).year != null
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getTimeZone
unanalyzedcall on getLocale
unanalyzedcall on java.util.Calendar:getInstance
unanalyzedcall on java.util.Locale
unanalyzedcall on java.util.TimeZone:getTimeZone
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on java.util.ArrayList










method Year getBlogForPreviousYear(Year)
prethis.years != null
preyear != null
preyear.year >= -231+1
postreturn_value != null
postinit'ed(new ArrayList(Day#1) num objects)
postinit'ed(new ArrayList(Day#2) num objects)
postinit'ed(new ArrayList(Day#3) num objects)
postinit'ed(new Day(Month#2) num objects)
postinit'ed(new Day(Month#2).blog)
postinit'ed(new Day(Month#2).blogEntries)
postinit'ed(new Day(Month#2).date)
postinit'ed(new Day(Month#2).day)
postinit'ed(new Day(Month#2).month)
postinit'ed(new Day(Month#2).publishedBlogEntries)
postinit'ed(new Day(Month#2).unpublishedBlogEntries)
postnew Day[](Month#1) num objects in {0, 12}
postinit'ed(new Day[](Month#1).length)
postinit'ed(new Day[](Month#1)[...])
postnew Month(init#2) num objects in {0, 12}
postnew Month(init#2).blog != null
postnew Month(init#2).dailyBlogs != null
postinit'ed(new Month(init#2).date)
postinit'ed(new Month(init#2).lastDayInMonth)
postnew Month(init#2).month == 13
postnew Month(init#2).year != null
postnew Month[](init#1) num objects <= 1
postnew Year(getBlogForYear#1) num objects == new Month[](init#1) num objects
postnew Year(getBlogForYear#1).months.length == 12
postinit'ed(new Year(getBlogForYear#1).months[...])
postnew Year(getBlogForYear#1).blog != null
postinit'ed(new Year(getBlogForYear#1).date)
postnew Year(getBlogForYear#1).months == &new Month[](init#1)
postnew Year(getBlogForYear#1).year == year.year - 1
postnew Year(getBlogForYear#1).year <= 232-2
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on java.util.ArrayList










method Year getBlogForNextYear(Year)
prethis.years != null
preyear != null
preyear.year <= 232-2
postreturn_value != null
postinit'ed(new ArrayList(Day#1) num objects)
postinit'ed(new ArrayList(Day#2) num objects)
postinit'ed(new ArrayList(Day#3) num objects)
postinit'ed(new Day(Month#2) num objects)
postinit'ed(new Day(Month#2).blog)
postinit'ed(new Day(Month#2).blogEntries)
postinit'ed(new Day(Month#2).date)
postinit'ed(new Day(Month#2).day)
postinit'ed(new Day(Month#2).month)
postinit'ed(new Day(Month#2).publishedBlogEntries)
postinit'ed(new Day(Month#2).unpublishedBlogEntries)
postnew Day[](Month#1) num objects in {0, 12}
postinit'ed(new Day[](Month#1).length)
postinit'ed(new Day[](Month#1)[...])
postnew Month(init#2) num objects in {0, 12}
postnew Month(init#2).blog != null
postnew Month(init#2).dailyBlogs != null
postinit'ed(new Month(init#2).date)
postinit'ed(new Month(init#2).lastDayInMonth)
postnew Month(init#2).month == 13
postnew Month(init#2).year != null
postnew Month[](init#1) num objects <= 1
postnew Year(getBlogForYear#1) num objects == new Month[](init#1) num objects
postnew Year(getBlogForYear#1).months.length == 12
postinit'ed(new Year(getBlogForYear#1).months[...])
postnew Year(getBlogForYear#1).blog != null
postinit'ed(new Year(getBlogForYear#1).date)
postnew Year(getBlogForYear#1).months == &new Month[](init#1)
postnew Year(getBlogForYear#1).year == year.year + 1
postnew Year(getBlogForYear#1).year >= -231+1
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on java.util.ArrayList










method List getBlogEntries()
prethis.years != null
presumptionjava.util.List:get(...)@923 != null
presumptionjava.util.List:size(...)@922 >= -231+1
presumptionmonths[month].month@924 in 1..12
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
presumptiony.months.length@923 >= 1
presumptiony.months@923 != null
postreturn_value == &new ArrayList(getBlogEntries#1 )
postnew ArrayList(getBlogEntries#1) num objects == 1
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getConfiguredFactory
unanalyzedcall on getBlogEntryDAO
unanalyzedcall on getBlog
unanalyzedcall on getId
unanalyzedcall on getCompositeKeyForBlogEntry
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on setPersistent
unanalyzedcall on setEventsEnabled
unanalyzedcall on net.sourceforge.pebble.domain. BlogServiceException
unanalyzedcall on net.sf.ehcache.Cache:get
unanalyzedcall on net.sf.ehcache.Element:getValue
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on loadBlogEntry
unanalyzedcall on net.sf.ehcache.Element
unanalyzedcall on net.sf.ehcache.Cache:put
unanalyzedcall on clone
unanalyzedcall on getBlogEntry
unanalyzedcall on java.util.List:add
unanalyzedcall on getBlogForMonth
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on getBlogEntries
unanalyzedcall on java.util.ArrayList
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on java.util.List:addAll









Prev Msg Next Msg
+
high
null dereferencecheck fails here: requires months[month] != null
Prev Msg Next Msg










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method List getUnpublishedBlogEntries()
prethis.blogEntryIndex != null
preinit'ed(this.blogEntryIndex.unpublishedIndexEntries )
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postreturn_value == &new ArrayList(getUnpublishedBl ogEntries#1)
postnew ArrayList(getUnpublishedBlogEntries#1) num objects == 1
unanalyzedcall on java.util.ArrayList
test_vectorjava.util.Iterator:hasNext(...)@947: {1}, {0}









  infocall too complex - analysis skipped-- call on BlogEntry getBlogEntry(Blog, String)










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method int getNumberOfBlogEntries()
prethis.blogEntryIndex != null
prethis.blogEntryIndex.indexEntries != null
postinit'ed(return_value)
unanalyzedcall on java.util.List:size










method int getNumberOfPublishedBlogEntries()
prethis.blogEntryIndex != null
prethis.blogEntryIndex.publishedIndexEntries != null
postinit'ed(return_value)
unanalyzedcall on java.util.List:size










method int getNumberOfUnpublishedBlogEntries()
prethis.blogEntryIndex != null
prethis.blogEntryIndex.unpublishedIndexEntries != null
postinit'ed(return_value)
unanalyzedcall on java.util.List:size










method int getNumberOfStaticPages()
prethis.staticPageIndex != null
prethis.staticPageIndex.index != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:size










method List getRecentBlogEntries(int)
prethis.blogEntryIndex != null
preinit'ed(this.blogEntryIndex.indexEntries)
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postreturn_value == &new ArrayList(getRecentBlogEnt ries#2)
postnew ArrayList(getRecentBlogEntries#2) num objects == 1
unanalyzedcall on java.util.ArrayList
test_vectorjava.util.Iterator:hasNext(...)@1005: {1}, {0}









  infocall too complex - analysis skipped-- call on BlogEntry getBlogEntry(Blog, String)










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method List getRecentPublishedBlogEntries()
prethis.blogEntryIndex != null
preinit'ed(this.blogEntryIndex.publishedIndexEntries)
prethis.properties != null
postreturn_value == &new ArrayList(getRecentPublish edBlogEntries#2*)
postnew ArrayList(getRecentPublishedBlogEntries#2*) num objects == 1
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getConfiguredFactory
unanalyzedcall on getBlogEntryDAO
unanalyzedcall on getBlog
unanalyzedcall on getId
unanalyzedcall on getCompositeKeyForBlogEntry
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on setPersistent
unanalyzedcall on setEventsEnabled
unanalyzedcall on net.sourceforge.pebble.domain. BlogServiceException
unanalyzedcall on net.sf.ehcache.Cache:get
unanalyzedcall on net.sf.ehcache.Element:getValue
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on loadBlogEntry
unanalyzedcall on net.sf.ehcache.Element
unanalyzedcall on net.sf.ehcache.Cache:put
unanalyzedcall on clone
unanalyzedcall on getBlogEntry
unanalyzedcall on java.util.List:add
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.Integer:parseInt










method List getRecentPublishedBlogEntries(int)
prethis.blogEntryIndex != null
preinit'ed(this.blogEntryIndex.publishedIndexEntries)
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postreturn_value == &new ArrayList(getRecentPublish edBlogEntries#2)
postnew ArrayList(getRecentPublishedBlogEntries#2) num objects == 1
unanalyzedcall on java.util.ArrayList
test_vectorgetBlogEntry(...)@1048: Addr_Set{null}, Inverse{null}
test_vectorjava.util.Iterator:hasNext(...)@1042: {1}, {0}









  infocall too complex - analysis skipped-- call on BlogEntry getBlogEntry(Blog, String)










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method List getBlogEntries(List)
preblogEntryIds != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postreturn_value == &new LinkedList(getBlogEntries# 2)
postnew LinkedList(getBlogEntries#2) num objects == 1
test_vectorgetBlogEntry(...)@1071: Addr_Set{null}, Inverse{null}
test_vectorjava.util.Iterator:hasNext(...)@1069: {1}, {0}









  infocall too complex - analysis skipped-- call on BlogEntry getBlogEntry(Blog, String)










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method List getRecentPublishedBlogEntries(Category)
precategory != null
preinit'ed(category.blogEntries)
prethis.categoryIndex != null
pre(soft) this.properties != null
presumptionblogEntry.state@1096 != null
presumptionnet.sourceforge.pebble.domain.State__static_init. new State(State__static_init#5).name@1096 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
presumptionthis.properties@1096 != null
postreturn_value == &new ArrayList(getRecentPublish edBlogEntries#2)
postnew ArrayList(getRecentPublishedBlogEntries#2) num objects == 1
unanalyzedcall on getBlogEntries
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.lang.String:equals
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.Integer:parseInt
test_vectorgetBlogEntry(...)@1096: Addr_Set{null}, Inverse{null}
test_vectorjava.util.Iterator:hasNext(...)@1094: {1}, {0}









  infocall too complex - analysis skipped-- call on BlogEntry getBlogEntry(Blog, String)










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method List getRecentPublishedBlogEntries(String)
prethis.authorIndex != null
prethis.authorIndex.authors != null
pre(soft) this.properties != null
presumptionblogEntry.state@1125 != null
presumptionnet.sourceforge.pebble.domain.State__static_init. new State(State__static_init#5).name@1125 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
presumptionthis.properties@1125 != null
postreturn_value == &new ArrayList(getRecentPublish edBlogEntries#2)
postnew ArrayList(getRecentPublishedBlogEntries#2) num objects == 1
unanalyzedcall on java.lang.String:equals
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.Integer:parseInt
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.util.LinkedList
test_vectorgetBlogEntry(...)@1125: Addr_Set{null}, Inverse{null}
test_vectorjava.util.Iterator:hasNext(...)@1123: {1}, {0}









  infocall too complex - analysis skipped-- call on BlogEntry getBlogEntry(Blog, String)










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method List getRecentPublishedBlogEntries(Tag)
pretag != null
preinit'ed(tag.name)
prethis.tagIndex != null
prethis.tagIndex.tags != null
pre(soft) this.properties != null
pre(soft) init'ed(this.tagIndex.blog)
presumptionblogEntry.state@1154 != null
presumptionnet.sourceforge.pebble.domain.State__static_init. new State(State__static_init#5).name@1154 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
presumptionthis.properties@1154 != null
postreturn_value == &new ArrayList(getRecentPublish edBlogEntries#2)
postnew ArrayList(getRecentPublishedBlogEntries#2) num objects == 1
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.String:replaceAll
unanalyzedcall on encode
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.lang.String:equals
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.Integer:parseInt
unanalyzedcall on java.util.Map:get
unanalyzedcall on net.sourceforge.pebble.index.IndexedTag
unanalyzedcall on java.util.Map:put
unanalyzedcall on getName
unanalyzedcall on getBlogEntries
test_vectorgetBlogEntry(...)@1154: Addr_Set{null}, Inverse{null}
test_vectorjava.util.Iterator:hasNext(...)@1152: {1}, {0}









  infocall too complex - analysis skipped-- call on BlogEntry getBlogEntry(Blog, String)










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method List getRecentApprovedResponses()
prethis.responseIndex != null
preinit'ed(this.responseIndex.approvedResponses)
pre(soft) net.sourceforge.pebble.domain.State__static_ init.new State(State__static_init#5).name != null
pre(soft) this.properties != null
presumptiongetBlogEntry(...).state@1181 != null
presumptionjava.util.Iterator:next(...)@1179 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
presumptionresponse.blogEntry@1181 != null
postreturn_value == &new ArrayList(getRecentApprove dResponses#2)
postnew ArrayList(getRecentApprovedResponses#2) num objects == 1
unanalyzedcall on getConfiguredFactory
unanalyzedcall on getBlogEntryDAO
unanalyzedcall on getBlog
unanalyzedcall on getId
unanalyzedcall on getCompositeKeyForBlogEntry
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on setPersistent
unanalyzedcall on setEventsEnabled
unanalyzedcall on net.sourceforge.pebble.domain. BlogServiceException
unanalyzedcall on net.sf.ehcache.Cache:get
unanalyzedcall on net.sf.ehcache.Element:getValue
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on loadBlogEntry
unanalyzedcall on net.sf.ehcache.Element
unanalyzedcall on net.sf.ehcache.Cache:put
unanalyzedcall on clone
unanalyzedcall on getBlogEntry
unanalyzedcall on java.lang.String:equals
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.Integer:parseInt
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:lastIndexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on getResponse
unanalyzedcall on getComments
unanalyzedcall on java.util.List:add
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:addAll
unanalyzedcall on java.util.Date:getTime
unanalyzedcall on getTrackBack
unanalyzedcall on java.lang.Long:parseLong
unanalyzedcall on java.lang.String:startsWith
test_vectorjava.util.Iterator:hasNext(...)@1179: {1}, {0}









  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method List getApprovedResponses()
prethis.responseIndex != null
preinit'ed(this.responseIndex.approvedResponses)
postreturn_value == &new ArrayList(getApprovedRespo nses#1*)
postnew ArrayList(getApprovedResponses#1*) num objects == 1
unanalyzedcall on java.util.ArrayList










method List getPendingResponses()
prethis.responseIndex != null
preinit'ed(this.responseIndex.pendingResponses)
postreturn_value == &new ArrayList(getPendingRespon ses#1*)
postnew ArrayList(getPendingResponses#1*) num objects == 1
unanalyzedcall on java.util.ArrayList










method List getRejectedResponses()
prethis.responseIndex != null
preinit'ed(this.responseIndex.rejectedResponses)
postreturn_value == &new ArrayList(getRejectedRespo nses#1*)
postnew ArrayList(getRejectedResponses#1*) num objects == 1
unanalyzedcall on java.util.ArrayList










method int getNumberOfResponses()
prethis.responseIndex != null
prethis.responseIndex.approvedResponses != null
prethis.responseIndex.pendingResponses != null
prethis.responseIndex.rejectedResponses != null
presumptionjava.util.List:size(...)@202 + java.util. List:size(...)@193 + java.util.List:size(...)@211 in -231..232-1
postinit'ed(return_value)
unanalyzedcall on java.util.List:size










method int getNumberOfApprovedResponses()
prethis.responseIndex != null
prethis.responseIndex.approvedResponses != null
postinit'ed(return_value)
unanalyzedcall on java.util.List:size










method int getNumberOfPendingResponses()
prethis.responseIndex != null
prethis.responseIndex.pendingResponses != null
postinit'ed(return_value)
unanalyzedcall on java.util.List:size










method int getNumberOfRejectedResponses()
prethis.responseIndex != null
prethis.responseIndex.rejectedResponses != null
postinit'ed(return_value)
unanalyzedcall on java.util.List:size










method Date getLastModified()
prethis.blogEntryIndex != null
preinit'ed(this.blogEntryIndex.publishedIndexEntries)
presumptionjava.util.List:get(...)@1270 != null
postinit'ed(return_value)
postnew Date(getLastModified#1) num objects == 1
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getConfiguredFactory
unanalyzedcall on getBlogEntryDAO
unanalyzedcall on getBlog
unanalyzedcall on getId
unanalyzedcall on getCompositeKeyForBlogEntry
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on setPersistent
unanalyzedcall on setEventsEnabled
unanalyzedcall on net.sourceforge.pebble.domain. BlogServiceException
unanalyzedcall on net.sf.ehcache.Cache:get
unanalyzedcall on net.sf.ehcache.Element:getValue
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on loadBlogEntry
unanalyzedcall on net.sf.ehcache.Element
unanalyzedcall on net.sf.ehcache.Cache:put
unanalyzedcall on clone
unanalyzedcall on getBlogEntry
unanalyzedcall on java.util.List:add
unanalyzedcall on org.apache.commons.logging.Log:error
test_vectorjava.util.List:size(...)@1269: {-231..0, 2..232-1}, {1}










method Date getDateOfLastResponse()
prethis.responseIndex != null
preinit'ed(this.responseIndex.approvedResponses)
pre(soft) net.sourceforge.pebble.domain.State__static_ init.new State(State__static_init#5).name != null
pre(soft) this.properties != null
presumptionjava.util.List:get(...)@1284 != null
postinit'ed(return_value)
postnew Date(getDateOfLastResponse#1) num objects <= 1
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getConfiguredFactory
unanalyzedcall on getBlogEntryDAO
unanalyzedcall on getBlog
unanalyzedcall on getId
unanalyzedcall on getCompositeKeyForBlogEntry
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on setPersistent
unanalyzedcall on setEventsEnabled
unanalyzedcall on net.sourceforge.pebble.domain. BlogServiceException
unanalyzedcall on net.sf.ehcache.Cache:get
unanalyzedcall on net.sf.ehcache.Element:getValue
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on loadBlogEntry
unanalyzedcall on net.sf.ehcache.Element
unanalyzedcall on net.sf.ehcache.Cache:put
unanalyzedcall on clone
unanalyzedcall on getBlogEntry
unanalyzedcall on java.util.List:add
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on java.lang.String:equals
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.Integer:parseInt
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:lastIndexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on getResponse
unanalyzedcall on getComments
unanalyzedcall on java.util.List:addAll
unanalyzedcall on java.util.Date:getTime
unanalyzedcall on getTrackBack
unanalyzedcall on java.lang.Long:parseLong
unanalyzedcall on java.lang.String:startsWith
test_vectorjava.util.List:size(...)@1283: {-231..0}, {1..232-1}









Prev Msg Next Msg
+
warning
test always goes same waytest predetermined because responses != null
Prev Msg Next Msg











method BlogEntry getPreviousBlogEntry(BlogEntry)
preblogEntry != null
preinit'ed(blogEntry.date)
preinit'ed(blogEntry.id)
preinit'ed(this.blogEntryIndex)
pre(soft) init'ed(this.blogEntryIndex.indexEntries)
pre(soft) this.properties != null
pre(soft) this.years != null
presumptionday.day <= day.month.dailyBlogs.length@1294 + 1
presumptionday.month.dailyBlogs.length@1294 >= 1
presumptionday.month.dailyBlogs@1294 != null
presumptionday.month.month@1294 <= 13
presumptionday.month.month@1294 <= day.month.year.months. length@1294 + 1
presumptionday.month.year.blog.years@1294 != null
presumptionday.month.year.blog@1294 != null
presumptionday.month.year.months.length@1294 in range
presumptionday.month.year.months@1294 != null
presumptionday.month.year.year@1294 >= -231+1
presumptionday.month.year@1294 != null
presumptionday.month@1294 != null
presumptionday.publishedBlogEntries@1292 != null
presumptionday.publishedBlogEntries@1296 != null
presumptiongetBlogForFirstMonth(...).dailyBlogs.length@1291 >= 1
presumptiongetBlogForFirstMonth(...).dailyBlogs@1291 != null
presumptiongetBlogForFirstMonth(...).lastDayInMonth@1291 >= 1
postinit'ed(return_value)
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:get
unanalyzedcall on java.util.Date
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getTimeZone
unanalyzedcall on getLocale
unanalyzedcall on java.util.Calendar:getInstance
unanalyzedcall on java.util.Locale
unanalyzedcall on java.util.TimeZone:getTimeZone
unanalyzedcall on java.util.Calendar:get
unanalyzedcall on getBlogForMonth
unanalyzedcall on java.util.List:isEmpty
unanalyzedcall on java.lang.Long:parseLong
unanalyzedcall on getBlogForDay
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on java.util.List:indexOf
unanalyzedcall on getBlogForPreviousDay
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on getMonth
unanalyzedcall on getBlogForPreviousYear
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog









Prev Msg Next Msg
+
medium
null dereferencecheck might fail: requires getBlogForFirstMonth(... ) != null
+
low
precondition failurenet/sourceforge/pebble/domain/Month. getBlogForFirstDay: this.dailyBlogs.length >= 1
+
low
precondition failurenet/sourceforge/pebble/domain/Month. getBlogForFirstDay: this.lastDayInMonth >= 1
Prev Msg Next Msg










Prev Msg Next Msg
+
medium
null dereferencecheck might fail: requires day != null
+
medium
precondition failurenet/sourceforge/pebble/domain/Day.getPreviousBlogEn try: this.publishedBlogEntries != null
Prev Msg Next Msg










Prev Msg Next Msg
+
medium
null dereferencecheck might fail: requires day != null
+
medium
precondition failurenet/sourceforge/pebble/domain/Day.getLastBlogEntry: this.publishedBlogEntries != null
Prev Msg Next Msg










  infocall too complex - analysis skipped-- call on BlogEntry getBlogEntry(Blog, String)











method BlogEntry getNextBlogEntry(BlogEntry)
preblogEntry != null
preinit'ed(blogEntry.date)
preinit'ed(blogEntry.id)
prethis.properties != null
prethis.years != null
presumptionday.day < day.month.dailyBlogs.length@1317
presumptionday.day - day.month.lastDayInMonth@1317 in -232+1..6_442_450_943
presumptionday.month.dailyBlogs.length@1317 >= 1
presumptionday.month.dailyBlogs@1317 != null
presumptionday.month.month@1317 >= 0
presumptionday.month.month@1317 - day.month.year.months. length@1317 in {-Inf..-1, 12..232-1}
presumptionday.month.year.blog.years@1317 != null
presumptionday.month.year.blog@1317 != null
presumptionday.month.year.months@1317 != null
presumptionday.month.year.year@1317 <= 232-2
presumptionday.month.year@1317 != null
presumptionday.month@1317 != null
presumptionday.publishedBlogEntries@1315 != null
presumptionday.publishedBlogEntries@1319 != null
postinit'ed(return_value)
unanalyzedcall on java.util.List:iterator
unanalyzedcall on java.util.List:add
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getTimeZone
unanalyzedcall on getLocale
unanalyzedcall on java.util.Calendar:getInstance
unanalyzedcall on java.util.Locale
unanalyzedcall on java.util.TimeZone:getTimeZone
unanalyzedcall on java.util.Calendar:get
unanalyzedcall on getBlogForMonth
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on getBlogForDay
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on getBlogForFirstDay
unanalyzedcall on java.util.List:get
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:isEmpty
unanalyzedcall on getBlog
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on java.util.List:lastIndexOf
unanalyzedcall on getBlogForNextDay
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on java.util.ArrayList
unanalyzedcall on getBlogForNextYear









Prev Msg Next Msg
+
medium
null dereferencecheck might fail: requires day != null
+
medium
precondition failurenet/sourceforge/pebble/domain/Day.getNextBlogEntry: this.publishedBlogEntries != null
Prev Msg Next Msg










Prev Msg Next Msg
+
medium
null dereferencecheck might fail: requires day != null
+
medium
precondition failurenet/sourceforge/pebble/domain/Day.getFirstBlogEntry : this.publishedBlogEntries != null
Prev Msg Next Msg










  infocall too complex - analysis skipped-- call on BlogEntry getBlogEntry(Blog, String)











method List getCategories()
preinit'ed(this.rootCategory)
postreturn_value == &new ArrayList(getCategories#1* )
postinit'ed(new ArrayList(Category#1) num objects)
postinit'ed(new ArrayList(Category#2) num objects)
postinit'ed(new ArrayList(Category#3) num objects)
postnew ArrayList(getCategories#1*) num objects == 1
postinit'ed(new Category(getCategory#2) num objects)
postpossibly_updated(new Category(getCategory#2).blog)
postinit'ed(new Category(getCategory#2).blogEntries)
postpossibly_updated(new Category(getCategory#2).id)
postinit'ed(new Category(getCategory#2).name)
postpossibly_updated(new Category(getCategory#2). parent)
postinit'ed(new Category(getCategory#2).subCategories)
postinit'ed(new Category(getCategory#2).tags)
postinit'ed(new Category(getCategory#2).tagsAsList)
postinit'ed(new Category(getCategory#3) num objects)
postpossibly_updated(new Category(getCategory#3).blog)
postinit'ed(new Category(getCategory#3).blogEntries)
postpossibly_updated(new Category(getCategory#3).id)
postinit'ed(new Category(getCategory#3).name)
postpossibly_updated(new Category(getCategory#3). parent)
postinit'ed(new Category(getCategory#3).subCategories)
postinit'ed(new Category(getCategory#3).tags)
postinit'ed(new Category(getCategory#3).tagsAsList)
unanalyzedcall on getSubCategories
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getCategory
unanalyzedcall on java.lang.String:startsWith
unanalyzedcall on java.lang.String:equals
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getLocale
unanalyzedcall on net.sourceforge.pebble.util. I18n:getMessage
unanalyzedcall on net.sourceforge.pebble.domain.Category
unanalyzedcall on addCategory
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:substring
unanalyzedcall on getId
unanalyzedcall on java.lang.String:lastIndexOf
unanalyzedcall on setBlog
unanalyzedcall on isRootCategory
unanalyzedcall on addSubCategory
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add
unanalyzedcall on getCategories
unanalyzedcall on java.util.List:addAll
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on java.util.Collections:unmodifiableList
unanalyzedcall on java.util.List:contains










method Category getCategory(String)
preinit'ed(this.rootCategory)
postinit'ed(return_value)
postinit'ed(new ArrayList(Category#1) num objects)
postinit'ed(new ArrayList(Category#2) num objects)
postinit'ed(new ArrayList(Category#3) num objects)
postinit'ed(new Category(getCategory#2*) num objects)
postpossibly_updated(new Category(getCategory#2*). blog)
postinit'ed(new Category(getCategory#2*).blogEntries)
postpossibly_updated(new Category(getCategory#2*).id)
postinit'ed(new Category(getCategory#2*).name)
postpossibly_updated(new Category(getCategory#2*). parent)
postpossibly_updated(new Category(getCategory#2*). subCategories)
postinit'ed(new Category(getCategory#2*).tags)
postinit'ed(new Category(getCategory#2*).tagsAsList)
postinit'ed(new Category(getCategory#3*) num objects)
postpossibly_updated(new Category(getCategory#3*). blog)
postinit'ed(new Category(getCategory#3*).blogEntries)
postpossibly_updated(new Category(getCategory#3*).id)
postinit'ed(new Category(getCategory#3*).name)
postpossibly_updated(new Category(getCategory#3*). parent)
postpossibly_updated(new Category(getCategory#3*). subCategories)
postinit'ed(new Category(getCategory#3*).tags)
postinit'ed(new Category(getCategory#3*).tagsAsList)
unanalyzedcall on getSubCategories
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getCategory
unanalyzedcall on java.lang.String:startsWith
unanalyzedcall on java.lang.String:equals
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getLocale
unanalyzedcall on net.sourceforge.pebble.util. I18n:getMessage
unanalyzedcall on net.sourceforge.pebble.domain.Category
unanalyzedcall on addCategory
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:substring
unanalyzedcall on getId
unanalyzedcall on java.lang.String:lastIndexOf
unanalyzedcall on setBlog
unanalyzedcall on isRootCategory
unanalyzedcall on addSubCategory
unanalyzedcall on java.util.Collections:unmodifiableList
unanalyzedcall on java.util.List:contains
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add










method Category getRootCategory()
preinit'ed(this.rootCategory)
postreturn_value == this.rootCategory
postinit'ed(return_value)










method void setRootCategory(Category)
postthis.rootCategory == category
postinit'ed(this.rootCategory)










method void addCategory(Category)
precategory != null
preinit'ed(this.rootCategory)
pre(soft) category.id != null
postpossibly_updated(category.blog)
postpossibly_updated(category.parent)
postinit'ed(new ArrayList(Category#1) num objects)
postinit'ed(new ArrayList(Category#2) num objects)
postinit'ed(new ArrayList(Category#3) num objects)
postinit'ed(new Category(getCategory#2*) num objects)
postpossibly_updated(new Category(getCategory#2*). blog)
postinit'ed(new Category(getCategory#2*).blogEntries)
postpossibly_updated(new Category(getCategory#2*).id)
postinit'ed(new Category(getCategory#2*).name)
postpossibly_updated(new Category(getCategory#2*). parent)
postpossibly_updated(new Category(getCategory#2*). subCategories)
postinit'ed(new Category(getCategory#2*).tags)
postinit'ed(new Category(getCategory#2*).tagsAsList)
postinit'ed(new Category(getCategory#3*) num objects)
postpossibly_updated(new Category(getCategory#3*). blog)
postinit'ed(new Category(getCategory#3*).blogEntries)
postpossibly_updated(new Category(getCategory#3*).id)
postinit'ed(new Category(getCategory#3*).name)
postpossibly_updated(new Category(getCategory#3*). parent)
postpossibly_updated(new Category(getCategory#3*). subCategories)
postinit'ed(new Category(getCategory#3*).tags)
postinit'ed(new Category(getCategory#3*).tagsAsList)
unanalyzedcall on getSubCategories
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getCategory
unanalyzedcall on java.lang.String:startsWith
unanalyzedcall on java.lang.String:equals
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getLocale
unanalyzedcall on net.sourceforge.pebble.util. I18n:getMessage
unanalyzedcall on net.sourceforge.pebble.domain.Category
unanalyzedcall on addCategory
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:substring
unanalyzedcall on getId
unanalyzedcall on java.lang.String:lastIndexOf
unanalyzedcall on setBlog
unanalyzedcall on isRootCategory
unanalyzedcall on addSubCategory
unanalyzedcall on java.util.Collections:unmodifiableList
unanalyzedcall on java.util.List:contains
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add









Prev Msg Next Msg
+
medium
precondition failurenet/sourceforge/pebble/domain/CategoryBuilder. addCategory: category.id != null
+
warning
unused assignment in calleeunused assignment to (builder.rootCategory) in addCategory
Prev Msg Next Msg











method void removeCategory(Category)
precategory != null
pre(soft) category.id != null
pre(soft) init'ed(this.rootCategory)
postpossibly_updated(category.parent)
postinit'ed(new ArrayList(Category#1) num objects)
postinit'ed(new ArrayList(Category#2) num objects)
postinit'ed(new ArrayList(Category#3) num objects)
postinit'ed(new Category(getCategory#2) num objects)
postpossibly_updated(new Category(getCategory#2).blog)
postinit'ed(new Category(getCategory#2).blogEntries)
postpossibly_updated(new Category(getCategory#2).id)
postinit'ed(new Category(getCategory#2).name)
postpossibly_updated(new Category(getCategory#2). parent)
postpossibly_updated(new Category(getCategory#2). subCategories)
postinit'ed(new Category(getCategory#2).tags)
postinit'ed(new Category(getCategory#2).tagsAsList)
postinit'ed(new Category(getCategory#3) num objects)
postpossibly_updated(new Category(getCategory#3).blog)
postinit'ed(new Category(getCategory#3).blogEntries)
postpossibly_updated(new Category(getCategory#3).id)
postinit'ed(new Category(getCategory#3).name)
postpossibly_updated(new Category(getCategory#3). parent)
postpossibly_updated(new Category(getCategory#3). subCategories)
postinit'ed(new Category(getCategory#3).tags)
postinit'ed(new Category(getCategory#3).tagsAsList)
unanalyzedcall on getSubCategories
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getCategory
unanalyzedcall on getParent
unanalyzedcall on removeSubCategory
unanalyzedcall on java.lang.String:startsWith
unanalyzedcall on java.lang.String:equals
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getLocale
unanalyzedcall on net.sourceforge.pebble.util. I18n:getMessage
unanalyzedcall on net.sourceforge.pebble.domain.Category
unanalyzedcall on addCategory
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:substring
unanalyzedcall on getId
unanalyzedcall on java.lang.String:lastIndexOf
unanalyzedcall on setBlog
unanalyzedcall on isRootCategory
unanalyzedcall on addSubCategory
unanalyzedcall on java.util.Collections:unmodifiableList
unanalyzedcall on java.util.List:contains
unanalyzedcall on java.util.List:remove
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add









Prev Msg Next Msg
+
medium
precondition failurenet/sourceforge/pebble/domain/CategoryBuilder. removeCategory: category.id != null
Prev Msg Next Msg











method List getTags()
prethis.tagIndex != null
preinit'ed(this.tagIndex.orderedTags)
postreturn_value == &new ArrayList(getTags#1*)
postnew ArrayList(getTags#1*) num objects == 1
unanalyzedcall on java.util.ArrayList










method Tag getTag(String)
postreturn_value == &new Tag(getTag#1)
postnew Tag(getTag#1) num objects == 1
postreturn_value.blog == this
postreturn_value.blog != null
postreturn_value.name != null
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.String:replaceAll










method RefererFilterManager getRefererFilterManager()
preinit'ed(this.refererFilterManager)
postreturn_value == this.refererFilterManager
postinit'ed(return_value)










method SearchIndex getSearchIndex()
preinit'ed(this.searchIndex)
postreturn_value == this.searchIndex
postinit'ed(return_value)










method BlogEntryIndex getBlogEntryIndex()
preinit'ed(this.blogEntryIndex)
postreturn_value == this.blogEntryIndex
postinit'ed(return_value)










method ResponseIndex getResponseIndex()
preinit'ed(this.responseIndex)
postreturn_value == this.responseIndex
postinit'ed(return_value)










method TagIndex getTagIndex()
preinit'ed(this.tagIndex)
postreturn_value == this.tagIndex
postinit'ed(return_value)










method CategoryIndex getCategoryIndex()
preinit'ed(this.categoryIndex)
postreturn_value == this.categoryIndex
postinit'ed(return_value)










method AuthorIndex getAuthorIndex()
preinit'ed(this.authorIndex)
postreturn_value == this.authorIndex
postinit'ed(return_value)










method StaticPageIndex getStaticPageIndex()
preinit'ed(this.staticPageIndex)
postreturn_value == this.staticPageIndex
postinit'ed(return_value)










method void log(HttpServletRequest, int)
prerequest != null
pre(soft) this.logger != null
presumptionjavax.servlet.http.HttpServletRequest:getAttribute( ...)@1493 != null
test_vectorjava.lang.String:matches(...)@1494: {1}, {0}









  infomethod not available-- call on void net.sourceforge.pebble.logging. AbstractLogger:log(HttpServletRequest, int)











method Theme getEditableTheme()
preinit'ed(this.editableTheme)
postreturn_value == this.editableTheme
postinit'ed(return_value)










method void setEditableTheme(Theme)
postthis.editableTheme == editableTheme
postinit'ed(this.editableTheme)










method String getFilesDirectory()
preinit'ed(this.root)
presumptioninit'ed(java.io.File.separator)
postreturn_value != null










method String getThemeDirectory()
preinit'ed(this.root)
presumptioninit'ed(java.io.File.separator)
postreturn_value != null










method String getPluginPropertiesFile()
preinit'ed(this.root)
presumptioninit'ed(java.io.File.separator)
postreturn_value != null










method bool isPublic()
prethis.properties != null
presumptionjava.util.Properties:getProperty(...)@1554 != null
postinit'ed(return_value)










method bool isPrivate()
prethis.properties != null
presumptionjava.util.Properties:getProperty(...)@1563 != null
postinit'ed(return_value)










method void start()
prenet/sourceforge/pebble/domain/Theme.log != null
prethis.editableTheme != null
prethis.editableTheme.blog != null
preinit'ed(this.editableTheme.name)
preinit'ed(this.editableTheme.pathToLiveThemes)
prethis.eventDispatcher != null
prethis.eventDispatcher.eventListenerList != null
prethis.eventDispatcher.eventListenerList. blogListeners != null
preinit'ed(this.id)
prethis.logger != null
preinit'ed(this.root)
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postpossibly_updated(this.messages)
postpossibly_updated(this.staticPageIndex.index)
postpossibly_updated(this.staticPageIndex. lockAttempts)
postnew HashMap(reindex#1) num objects <= 1
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getBlog
unanalyzedcall on getId
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on net.sourceforge.pebble.domain.Blog:getRoot
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on java.io.File
unanalyzedcall on java.io.File:exists
unanalyzedcall on java.io.File:mkdir
unanalyzedcall on java.io.File:listFiles
unanalyzedcall on java.io.File:isDirectory
unanalyzedcall on java.io.File:getName
unanalyzedcall on copy
unanalyzedcall on java.io.FileInputStream
unanalyzedcall on java.io.FileInputStream:getChannel
unanalyzedcall on java.io.FileOutputStream
unanalyzedcall on java.io.FileOutputStream:getChannel
unanalyzedcall on java.nio.channels.FileChannel:size
unanalyzedcall on java.nio.channels.FileChannel:transferFrom
unanalyzedcall on java.nio.channels.FileChannel:close
unanalyzedcall on java.io.File:getAbsolutePath
unanalyzedcall on net.sourceforge.pebble.util. FileUtils:deleteFile
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on java.io.File:renameTo
unanalyzedcall on net.sourceforge.pebble.api.event. PebbleEvent
unanalyzedcall on getEventListenerList
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getType
unanalyzedcall on isVetoed
unanalyzedcall on getBlogListeners
unanalyzedcall on blogStarted
unanalyzedcall on blogStopped
unanalyzedcall on org.apache.commons.logging.Log:info
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:subList
unanalyzedcall on net.sourceforge.pebble.util. SecurityUtils:getUsername
unanalyzedcall on java.util.Date
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getIndexesDirectory
unanalyzedcall on java.util.Map:put
unanalyzedcall on java.util.HashMap
unanalyzedcall on net.sourceforge.pebble.PebbleContext:getIns tance
unanalyzedcall on net.sourceforge.pebble.PebbleContext:getCon figuration
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:substring
unanalyzedcall on reindexBlogEntries
unanalyzedcall on reindexStaticPages
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getSearchIndexDirectory
unanalyzedcall on java.lang.Exception:getMessage
unanalyzedcall on getAnalyzer
unanalyzedcall on org.apache.lucene.index.IndexWriter:close
unanalyzedcall on getLuceneAnalyzer
unanalyzedcall on java.lang.Class:forName
unanalyzedcall on java.lang.Class:newInstance
unanalyzedcall on getDate
unanalyzedcall on getAuthor
unanalyzedcall on getTitle
unanalyzedcall on org.apache.lucene.index.IndexWriter
unanalyzedcall on java.util.Collection:iterator
unanalyzedcall on org.apache.lucene.document.Document
unanalyzedcall on org.apache.lucene.document.Field:Keyword
unanalyzedcall on org.apache.lucene.document.Document:add
unanalyzedcall on org.apache.lucene.document.Field:Text
unanalyzedcall on getPermalink
unanalyzedcall on org.apache.lucene.document.DateField:dateTo String
unanalyzedcall on org.apache.lucene.document.Field:UnIndexed
unanalyzedcall on getBody
unanalyzedcall on org.apache.lucene.document.Field:UnStored
unanalyzedcall on getTruncatedContent
unanalyzedcall on org.apache.lucene.index.IndexWriter:addDocu ment
unanalyzedcall on java.lang.Object:getClass
unanalyzedcall on java.lang.Class:getName
unanalyzedcall on net.sourceforge.pebble.util. StringUtils:transformHTML
unanalyzedcall on getStaticPageDAO
unanalyzedcall on loadStaticPages
unanalyzedcall on loadStaticPage
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.io.File:createNewFile
unanalyzedcall on org.apache.commons.logging.Log:warn
unanalyzedcall on java.io.FileWriter
unanalyzedcall on java.io.BufferedWriter
unanalyzedcall on java.util.Map:keySet
unanalyzedcall on java.util.Set:iterator
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.io.BufferedWriter:write
unanalyzedcall on java.io.BufferedWriter:newLine
unanalyzedcall on java.io.BufferedWriter:flush
unanalyzedcall on java.io.BufferedWriter:close
unanalyzedcall on java.io.File:delete
unanalyzedcall on getName
unanalyzedcall on net.sourceforge.pebble.domain. StaticPage:getId
unanalyzedcall on index
unanalyzedcall on java.util.EventObject
unanalyzedcall on java.util.Timer:schedule
unanalyzedcall on java.util.Timer:cancel
unanalyzedcall on getLocalPermalink
unanalyzedcall on getUrl
unanalyzedcall on getContent
unanalyzedcall on net.sourceforge.pebble.util. StringUtils:truncate
unanalyzedcall on net.sourceforge.pebble.api.event.blog. BlogEvent:getSource
unanalyzedcall on getPermalinkProvider
test_vectorjava.io.File:exists(...)@1575: {1}, {0}
test_vectorjava.io.File:exists(...)@1581: {1}, {0}
test_vectorjava.io.File:exists(...)@1586: {1}, {0}
test_vectorjava.io.File:exists(...)@1591: {1}, {0}









  infomethod not available-- call on void org.apache.commons.logging. Log:debug(Object)










  infomethod not available-- call on void net.sourceforge.pebble.logging. AbstractLogger:start()










  infomethod not available-- call on void fireBlogEvent(BlogEvent)










  infomethod not available-- call on void org.apache.commons.logging. Log:info(Object)











method void stop()
prenet/sourceforge/pebble/domain/Theme.log != null
prethis.editableTheme != null
prethis.editableTheme.blog != null
preinit'ed(this.editableTheme.name)
preinit'ed(this.editableTheme.pathToLiveThemes)
prethis.eventDispatcher != null
prethis.eventDispatcher.eventListenerList != null
prethis.eventDispatcher.eventListenerList. blogListeners != null
preinit'ed(this.id)
prethis.logger != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
unanalyzedcall on net.sourceforge.pebble.domain.Blog:getRoot
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on java.io.File
unanalyzedcall on java.io.File:exists
unanalyzedcall on java.io.File:mkdir
unanalyzedcall on java.io.File:listFiles
unanalyzedcall on java.io.File:isDirectory
unanalyzedcall on java.io.File:getName
unanalyzedcall on copy
unanalyzedcall on java.io.FileInputStream
unanalyzedcall on java.io.FileInputStream:getChannel
unanalyzedcall on java.io.FileOutputStream
unanalyzedcall on java.io.FileOutputStream:getChannel
unanalyzedcall on java.nio.channels.FileChannel:size
unanalyzedcall on java.nio.channels.FileChannel:transferFrom
unanalyzedcall on java.nio.channels.FileChannel:close
unanalyzedcall on java.io.File:getAbsolutePath
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on net.sourceforge.pebble.util. FileUtils:deleteFile
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on java.io.File:renameTo
unanalyzedcall on net.sourceforge.pebble.api.event. PebbleEvent
unanalyzedcall on getEventListenerList
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getType
unanalyzedcall on isVetoed
unanalyzedcall on getBlogListeners
unanalyzedcall on blogStarted
unanalyzedcall on blogStopped
unanalyzedcall on java.util.EventObject
unanalyzedcall on getBlog
unanalyzedcall on java.util.Timer:schedule
unanalyzedcall on java.util.Timer:cancel
unanalyzedcall on net.sourceforge.pebble.api.event.blog. BlogEvent:getSource









  infomethod not available-- call on void org.apache.commons.logging. Log:debug(Object)










  infomethod not available-- call on void net.sourceforge.pebble.logging. AbstractLogger:stop()










  infomethod not available-- call on void fireBlogEvent(BlogEvent)










  infomethod not available-- call on void org.apache.commons.logging. Log:info(Object)











method AbstractLogger getLogger()
preinit'ed(this.logger)
postreturn_value == this.logger
postinit'ed(return_value)










method List getContentDecorators()
prethis.properties != null
postreturn_value == &new ArrayList(getStringsFromPr operty#1)
postnew ArrayList(getStringsFromProperty#1) num objects == 1
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:startsWith










method ContentDecoratorChain getContentDecoratorChain()
preinit'ed(this.decoratorChain)
postreturn_value == this.decoratorChain
postinit'ed(return_value)










method List getBlogListeners()
prethis.properties != null
postreturn_value == &new ArrayList(getStringsFromPr operty#1)
postnew ArrayList(getStringsFromProperty#1) num objects == 1
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:startsWith










method List getBlogEntryListeners()
prethis.properties != null
postreturn_value == &new ArrayList(getStringsFromPr operty#1)
postnew ArrayList(getStringsFromProperty#1) num objects == 1
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:startsWith










method List getCommentListeners()
prethis.properties != null
postreturn_value == &new ArrayList(getStringsFromPr operty#1)
postnew ArrayList(getStringsFromProperty#1) num objects == 1
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:startsWith










method List getTrackBackListeners()
prethis.properties != null
postreturn_value == &new ArrayList(getStringsFromPr operty#1)
postnew ArrayList(getStringsFromProperty#1) num objects == 1
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:startsWith










method String getEventDispatcherName()
prethis.properties != null
postinit'ed(return_value)
unanalyzedcall on java.util.Properties:getProperty










method EventDispatcher getEventDispatcher()
preinit'ed(this.eventDispatcher)
postreturn_value == this.eventDispatcher
postinit'ed(return_value)










method EventListenerList getEventListenerList()
preinit'ed(this.eventListenerList)
postreturn_value == this.eventListenerList
postinit'ed(return_value)










method PluginProperties getPluginProperties()
preinit'ed(this.pluginProperties)
postreturn_value == this.pluginProperties
postinit'ed(return_value)










method String getPermalinkProviderName()
prethis.properties != null
postinit'ed(return_value)










method PermalinkProvider getPermalinkProvider()
preinit'ed(this.permalinkProvider)
postreturn_value == this.permalinkProvider
postinit'ed(return_value)










method void setPermalinkProvider(PermalinkProvider)
preprovider != null
postthis.permalinkProvider == provider
postthis.permalinkProvider != null









  infomethod not available-- call on void setBlog(Blog)











method void reindex()
preinit'ed(this.id)
presumptionnet/sourceforge/pebble/dao/DAOFactory. configuredFactory.staticPageDAO@1740 != null
presumptionnet/sourceforge/pebble/dao/DAOFactory. configuredFactory@1740 != null
presumptionnet/sourceforge/pebble/domain/AbstractBlog. log@1740 != null
presumptionnet/sourceforge/pebble/domain/BlogManager. instance@1740 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
presumptionthis...properties@1740 != null
presumptionthis.messages@1740 != null
presumptionthis.searchIndex.blog@1740 != null
presumptionthis.searchIndex@1740 != null
presumptionthis.staticPageIndex.blog@1740 != null
presumptionthis.staticPageIndex.lockAttempts@1740 <= 232-2
presumptionthis.staticPageIndex@1740 != null
postinit'ed(this.messages)
postpossibly_updated(this.staticPageIndex.index)
postpossibly_updated(this.staticPageIndex. lockAttempts)
postnew HashMap(reindex#1) num objects <= 1
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getBlog
unanalyzedcall on getId
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:subList
unanalyzedcall on net.sourceforge.pebble.util. SecurityUtils:getUsername
unanalyzedcall on java.util.Date
unanalyzedcall on java.util.List:add
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getIndexesDirectory
unanalyzedcall on java.io.File
unanalyzedcall on java.util.Map:put
unanalyzedcall on java.util.HashMap
unanalyzedcall on net.sourceforge.pebble.PebbleContext:getIns tance
unanalyzedcall on net.sourceforge.pebble.PebbleContext:getCon figuration
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:substring
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getSearchIndexDirectory
unanalyzedcall on java.lang.Exception:getMessage
unanalyzedcall on getAnalyzer
unanalyzedcall on org.apache.lucene.index.IndexWriter:close
unanalyzedcall on getLuceneAnalyzer
unanalyzedcall on java.lang.Class:forName
unanalyzedcall on java.lang.Class:newInstance
unanalyzedcall on getDate
unanalyzedcall on getAuthor
unanalyzedcall on getTitle
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on org.apache.lucene.index.IndexWriter
unanalyzedcall on java.util.Collection:iterator
unanalyzedcall on org.apache.lucene.document.Document
unanalyzedcall on org.apache.lucene.document.Field:Keyword
unanalyzedcall on org.apache.lucene.document.Document:add
unanalyzedcall on org.apache.lucene.document.Field:Text
unanalyzedcall on getPermalink
unanalyzedcall on org.apache.lucene.document.DateField:dateTo String
unanalyzedcall on org.apache.lucene.document.Field:UnIndexed
unanalyzedcall on getBody
unanalyzedcall on org.apache.lucene.document.Field:UnStored
unanalyzedcall on getTruncatedContent
unanalyzedcall on org.apache.lucene.index.IndexWriter:addDocu ment
unanalyzedcall on org.apache.commons.logging.Log:info
unanalyzedcall on java.lang.Object:getClass
unanalyzedcall on java.lang.Class:getName
unanalyzedcall on net.sourceforge.pebble.util. StringUtils:transformHTML
unanalyzedcall on getStaticPageDAO
unanalyzedcall on loadStaticPages
unanalyzedcall on net.sourceforge.pebble.domain.Blog:getRoot
unanalyzedcall on loadStaticPage
unanalyzedcall on java.io.File:getName
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.io.File:listFiles
unanalyzedcall on java.io.File:createNewFile
unanalyzedcall on org.apache.commons.logging.Log:warn
unanalyzedcall on java.io.FileWriter
unanalyzedcall on java.io.BufferedWriter
unanalyzedcall on java.util.Map:keySet
unanalyzedcall on java.util.Set:iterator
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.io.BufferedWriter:write
unanalyzedcall on java.io.BufferedWriter:newLine
unanalyzedcall on java.io.BufferedWriter:flush
unanalyzedcall on java.io.BufferedWriter:close
unanalyzedcall on java.io.File:delete
unanalyzedcall on getName
unanalyzedcall on net.sourceforge.pebble.domain. StaticPage:getId
unanalyzedcall on index
unanalyzedcall on getLocalPermalink
unanalyzedcall on getUrl
unanalyzedcall on getContent
unanalyzedcall on net.sourceforge.pebble.util. StringUtils:truncate
unanalyzedcall on getPermalinkProvider









  infomethod not available-- call on void org.apache.commons.logging. Log:info(Object)










  infocall too complex - analysis skipped-- call on void reindexBlogEntries()











method void reindexBlogEntries()
prenet/sourceforge/pebble/domain/AbstractBlog.log != null
prethis.messages != null
prethis.authorIndex != null
prethis.blogEntryIndex != null
prethis.categoryIndex != null
prethis.categoryIndex.blog != null
prethis.responseIndex != null
prethis.searchIndex != null
prethis.searchIndex.blog != null
prethis.tagIndex != null
pre(soft) net.sourceforge.pebble.domain.State__static_ init.new State(State__static_init#1).name != null
pre(soft) net.sourceforge.pebble.domain.State__static_ init.new State(State__static_init#2).name != null
pre(soft) net.sourceforge.pebble.domain.State__static_ init.new State(State__static_init#3).name != null
pre(soft) net.sourceforge.pebble.domain.State__static_ init.new State(State__static_init#5).name != null
pre(soft) net/sourceforge/pebble/dao/DAOFactory. configuredFactory != null
pre(soft) net/sourceforge/pebble/dao/DAOFactory. configuredFactory.blogEntryDAO != null
pre(soft) net/sourceforge/pebble/dao/file/FileBlogEntr yDAO.log != null
pre(soft) net/sourceforge/pebble/domain/BlogManager. instance != null
pre(soft) init'ed(net/sourceforge/pebble/domain/BlogMa nager.instance.multiBlog)
pre(soft) this.responseIndex.pendingResponses != null
pre(soft) this.responseIndex.rejectedResponses != null
pre(soft) this...properties != null
pre(soft) init'ed(this...rootCategory)
pre(soft) this...years != null
pre(soft) this.authorIndex.blog != null
pre(soft) this.blogEntryIndex.blog != null
pre(soft) this.responseIndex.blog != null
pre(soft) this.tagIndex.blog != null
presumptionjava.lang.Object:getClass(...)@1763 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postthis.authorIndex.authors == &new HashMap(clear#1)
postthis.blogEntryIndex.indexEntries == &new ArrayList(clear#1)
postthis.blogEntryIndex.publishedIndexEntries == &new ArrayList(clear#2)
postthis.blogEntryIndex.unpublishedIndexEntries == &new ArrayList(clear#3)
postinit'ed(this.messages)
postthis.responseIndex.approvedResponses == &new ArrayList(clear#1)
postthis.responseIndex.pendingResponses == &new ArrayList(clear#2)
postthis.responseIndex.rejectedResponses == &new ArrayList(clear#3)
postthis.tagIndex.orderedTags == One-of{old this.tagIndex.orderedTags, &new ArrayList(recalculateTagRankings#2)}
postthis.tagIndex.tags == &new HashMap(clear#1)
postinit'ed(new ArrayList(Category#1) num objects)
postinit'ed(new ArrayList(Category#2) num objects)
postinit'ed(new ArrayList(Category#3) num objects)
postnew ArrayList(clear#1) num objects == 1
postnew ArrayList(clear#2) num objects == 1
postnew ArrayList(clear#3) num objects == 1
postnew HashMap(clear#1) num objects == 1
postnew ArrayList(recalculateTagRankings#2) num objects <= 1
postinit'ed(new ArrayList(removeAllBlogEntries#1) num objects)
postinit'ed(new Category(getCategory#2) num objects)
postpossibly_updated(new Category(getCategory#2).blog)
postinit'ed(new Category(getCategory#2).blogEntries)
postpossibly_updated(new Category(getCategory#2).id)
postinit'ed(new Category(getCategory#2).name)
postpossibly_updated(new Category(getCategory#2). parent)
postpossibly_updated(new Category(getCategory#2). subCategories)
postinit'ed(new Category(getCategory#2).tags)
postinit'ed(new Category(getCategory#2).tagsAsList)
postinit'ed(new Category(getCategory#3) num objects)
postpossibly_updated(new Category(getCategory#3).blog)
postinit'ed(new Category(getCategory#3).blogEntries)
postpossibly_updated(new Category(getCategory#3).id)
postinit'ed(new Category(getCategory#3).name)
postpossibly_updated(new Category(getCategory#3). parent)
postpossibly_updated(new Category(getCategory#3). subCategories)
postinit'ed(new Category(getCategory#3).tags)
postinit'ed(new Category(getCategory#3).tagsAsList)
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.String:trim
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.String:replaceAll
unanalyzedcall on encode
unanalyzedcall on getSubCategories
unanalyzedcall on java.util.List:iterator
unanalyzedcall on getCategory
unanalyzedcall on java.lang.String:startsWith
unanalyzedcall on java.lang.String:equals
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getLocale
unanalyzedcall on net.sourceforge.pebble.util. I18n:getMessage
unanalyzedcall on net.sourceforge.pebble.domain.Category
unanalyzedcall on addCategory
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:substring
unanalyzedcall on getId
unanalyzedcall on java.lang.String:lastIndexOf
unanalyzedcall on setBlog
unanalyzedcall on isRootCategory
unanalyzedcall on addSubCategory
unanalyzedcall on getBlog
unanalyzedcall on java.util.List:add
unanalyzedcall on net.sourceforge.pebble.api.event. PebbleEvent
unanalyzedcall on getBlogEntries
unanalyzedcall on isPublished
unanalyzedcall on getTimeZone
unanalyzedcall on getLocale
unanalyzedcall on java.util.Calendar:getInstance
unanalyzedcall on java.util.Locale
unanalyzedcall on java.util.TimeZone:getTimeZone
unanalyzedcall on java.util.Calendar:get
unanalyzedcall on getBlogForMonth
unanalyzedcall on getBlogForDay
unanalyzedcall on java.util.Calendar:setTime
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:subList
unanalyzedcall on net.sourceforge.pebble.util. SecurityUtils:getUsername
unanalyzedcall on java.util.Date
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getIndexesDirectory
unanalyzedcall on java.io.File
unanalyzedcall on java.util.ArrayList
unanalyzedcall on addPublishedBlogEntry
unanalyzedcall on addUnpublishedBlogEntry
unanalyzedcall on java.util.Collections:sort
unanalyzedcall on java.util.Map:get
unanalyzedcall on net.sourceforge.pebble.index.IndexedTag
unanalyzedcall on java.util.Map:put
unanalyzedcall on java.util.HashMap
unanalyzedcall on java.util.Map:values
unanalyzedcall on java.util.Collection:iterator
unanalyzedcall on addBlogEntry
unanalyzedcall on java.util.Map:size
unanalyzedcall on getNumberOfBlogEntries
unanalyzedcall on java.lang.Math:round
unanalyzedcall on calculateRank
unanalyzedcall on java.util.LinkedList
unanalyzedcall on net.sourceforge.pebble.PebbleContext:getIns tance
unanalyzedcall on net.sourceforge.pebble.PebbleContext:getCon figuration
unanalyzedcall on java.lang.IllegalArgumentException
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getCalendar
unanalyzedcall on java.util.Calendar:set
unanalyzedcall on java.util.Calendar:getTime
unanalyzedcall on setDate
unanalyzedcall on net.sourceforge.pebble.domain.Month
unanalyzedcall on net.sourceforge.pebble.domain.TimePeriod
unanalyzedcall on getCategories
unanalyzedcall on java.util.List:addAll
unanalyzedcall on getName
unanalyzedcall on java.io.FileWriter
unanalyzedcall on java.io.BufferedWriter
unanalyzedcall on java.io.BufferedWriter:write
unanalyzedcall on java.io.BufferedWriter:newLine
unanalyzedcall on java.io.BufferedWriter:flush
unanalyzedcall on java.io.BufferedWriter:close
unanalyzedcall on writeIndex
unanalyzedcall on removeAllBlogEntries
unanalyzedcall on java.util.Map:keySet
unanalyzedcall on java.util.Set:iterator
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getSearchIndexDirectory
unanalyzedcall on java.lang.Exception:getMessage
unanalyzedcall on getAnalyzer
unanalyzedcall on org.apache.lucene.index.IndexWriter:close
unanalyzedcall on getLuceneAnalyzer
unanalyzedcall on java.lang.Class:forName
unanalyzedcall on java.lang.Class:newInstance
unanalyzedcall on java.io.File:exists
unanalyzedcall on java.io.File:mkdirs
unanalyzedcall on org.apache.lucene.index.IndexWriter
unanalyzedcall on java.io.File:getAbsolutePath
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on java.beans.PropertyChangeSupport:fireProper tyChange
unanalyzedcall on java.util.Date:getTime
unanalyzedcall on java.util.HashSet
unanalyzedcall on setState
unanalyzedcall on java.beans.PropertyChangeSupport
unanalyzedcall on java.beans.PropertyChangeSupport:addPropert yChangeListener
unanalyzedcall on org.xml.sax.helpers.DefaultHandler
unanalyzedcall on java.text.SimpleDateFormat
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getTimeZone
unanalyzedcall on java.text.SimpleDateFormat:setTimeZone
unanalyzedcall on javax.xml.parsers.SAXParserFactory:newInsta nce
unanalyzedcall on javax.xml.parsers.SAXParserFactory:setValid ating
unanalyzedcall on javax.xml.parsers.SAXParserFactory:setNames paceAware
unanalyzedcall on javax.xml.parsers.SAXParserFactory:newSAXPa rser
unanalyzedcall on javax.xml.parsers.SAXParser:parse
unanalyzedcall on java.lang.Exception:printStackTrace
unanalyzedcall on java.lang.Exception
unanalyzedcall on net.sourceforge.pebble.domain.Blog:getRoot
unanalyzedcall on java.io.File:listFiles
unanalyzedcall on getDate
unanalyzedcall on isApproved
unanalyzedcall on getGuid
unanalyzedcall on isPending
unanalyzedcall on isRejected
unanalyzedcall on getResponses
unanalyzedcall on getAllTags
unanalyzedcall on getAuthor
unanalyzedcall on getTitle
unanalyzedcall on org.apache.lucene.document.Document
unanalyzedcall on org.apache.lucene.document.Field:Keyword
unanalyzedcall on org.apache.lucene.document.Document:add
unanalyzedcall on org.apache.lucene.document.Field:Text
unanalyzedcall on getPermalink
unanalyzedcall on org.apache.lucene.document.DateField:dateTo String
unanalyzedcall on org.apache.lucene.document.Field:UnIndexed
unanalyzedcall on getBody
unanalyzedcall on org.apache.lucene.document.Field:UnStored
unanalyzedcall on getTruncatedContent
unanalyzedcall on getComments
unanalyzedcall on getTrackBacks
unanalyzedcall on getExcerpt
unanalyzedcall on org.apache.lucene.index.IndexWriter:addDocu ment
unanalyzedcall on org.apache.commons.logging.Log:info
unanalyzedcall on java.util.Collections:unmodifiableList
unanalyzedcall on java.util.List:contains
unanalyzedcall on java.util.EventObject
unanalyzedcall on java.util.List:remove
unanalyzedcall on getMonth
unanalyzedcall on java.util.Calendar:getActualMaximum
unanalyzedcall on getYear
unanalyzedcall on net.sourceforge.pebble.domain. Month:getBlog
unanalyzedcall on getState
unanalyzedcall on net.sourceforge.pebble.domain. BlogEntry:getId
unanalyzedcall on java.util.Set:size
unanalyzedcall on java.util.Collections:reverse
unanalyzedcall on getRootCategory
unanalyzedcall on getLocalPermalink
unanalyzedcall on getUrl
unanalyzedcall on getContent
unanalyzedcall on net.sourceforge.pebble.util. StringUtils:truncate
unanalyzedcall on getPermalinkProvider









  infomethod not available-- call on BlogEntryDAO getBlogEntryDAO()
  infomethod not available-- call on Collection loadBlogEntries(Blog)










  infomethod not available-- call on String net.sourceforge.pebble.util. StringUtils:transformHTML(String)










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method void reindexStaticPages()
prenet/sourceforge/pebble/domain/AbstractBlog.log != null
prethis.messages != null
pre(soft) net/sourceforge/pebble/dao/DAOFactory. configuredFactory != null
pre(soft) net/sourceforge/pebble/dao/DAOFactory. configuredFactory.staticPageDAO != null
pre(soft) net/sourceforge/pebble/domain/BlogManager. instance != null
pre(soft) init'ed(net/sourceforge/pebble/domain/BlogMa nager.instance.multiBlog)
pre(soft) this.staticPageIndex.lockAttempts <= 232-2
pre(soft) this...properties != null
pre(soft) this.searchIndex != null
pre(soft) this.searchIndex.blog != null
pre(soft) this.staticPageIndex != null
pre(soft) this.staticPageIndex.blog != null
presumptionjava.lang.Object:getClass(...)@1776 != null
presumptionorg.apache.commons.logging.LogFactory:getLog(... )@105 != null
postinit'ed(this.messages)
postthis.staticPageIndex.index == One-of{old this.staticPageIndex.index, &new HashMap(reindex#1)}
postthis.staticPageIndex.lockAttempts == One-of{old this.staticPageIndex.lockAttempts, old this.staticPageIndex.lockAttempts + 1, 0}
postinit'ed(this.staticPageIndex.lockAttempts)
postnew HashMap(reindex#1) num objects <= 1
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on getBlog
unanalyzedcall on getId
unanalyzedcall on java.lang.String:valueOf
unanalyzedcall on java.util.List:size
unanalyzedcall on java.util.List:subList
unanalyzedcall on net.sourceforge.pebble.util. SecurityUtils:getUsername
unanalyzedcall on java.util.Date
unanalyzedcall on java.util.List:add
unanalyzedcall on org.apache.commons.logging.Log:error
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getIndexesDirectory
unanalyzedcall on java.io.File
unanalyzedcall on java.util.Map:put
unanalyzedcall on java.util.HashMap
unanalyzedcall on net.sourceforge.pebble.PebbleContext:getIns tance
unanalyzedcall on net.sourceforge.pebble.PebbleContext:getCon figuration
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String:substring
unanalyzedcall on net.sourceforge.pebble.domain. Blog:getSearchIndexDirectory
unanalyzedcall on java.lang.Exception:getMessage
unanalyzedcall on getAnalyzer
unanalyzedcall on org.apache.lucene.index.IndexWriter:close
unanalyzedcall on getLuceneAnalyzer
unanalyzedcall on java.lang.Class:forName
unanalyzedcall on java.lang.Class:newInstance
unanalyzedcall on getDate
unanalyzedcall on getAuthor
unanalyzedcall on getTitle
unanalyzedcall on org.apache.commons.logging.Log:debug
unanalyzedcall on org.apache.lucene.index.IndexWriter
unanalyzedcall on java.util.Collection:iterator
unanalyzedcall on org.apache.lucene.document.Document
unanalyzedcall on org.apache.lucene.document.Field:Keyword
unanalyzedcall on org.apache.lucene.document.Document:add
unanalyzedcall on org.apache.lucene.document.Field:Text
unanalyzedcall on getPermalink
unanalyzedcall on org.apache.lucene.document.DateField:dateTo String
unanalyzedcall on org.apache.lucene.document.Field:UnIndexed
unanalyzedcall on getBody
unanalyzedcall on org.apache.lucene.document.Field:UnStored
unanalyzedcall on getTruncatedContent
unanalyzedcall on org.apache.lucene.index.IndexWriter:addDocu ment
unanalyzedcall on org.apache.commons.logging.Log:info
unanalyzedcall on net.sourceforge.pebble.domain.Blog:getRoot
unanalyzedcall on loadStaticPage
unanalyzedcall on java.io.File:getName
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.io.File:listFiles
unanalyzedcall on java.io.File:createNewFile
unanalyzedcall on org.apache.commons.logging.Log:warn
unanalyzedcall on java.io.FileWriter
unanalyzedcall on java.io.BufferedWriter
unanalyzedcall on java.util.Map:keySet
unanalyzedcall on java.util.Set:iterator
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.io.BufferedWriter:write
unanalyzedcall on java.io.BufferedWriter:newLine
unanalyzedcall on java.io.BufferedWriter:flush
unanalyzedcall on java.io.BufferedWriter:close
unanalyzedcall on java.io.File:delete
unanalyzedcall on getName
unanalyzedcall on net.sourceforge.pebble.domain. StaticPage:getId
unanalyzedcall on index
unanalyzedcall on getLocalPermalink
unanalyzedcall on getUrl
unanalyzedcall on getContent
unanalyzedcall on net.sourceforge.pebble.util. StringUtils:truncate
unanalyzedcall on getPermalinkProvider









  infomethod not available-- call on StaticPageDAO getStaticPageDAO()
  infomethod not available-- call on Collection loadStaticPages(Blog)










  infomethod not available-- call on String net.sourceforge.pebble.util. StringUtils:transformHTML(String)










  infomethod not available-- call on void org.apache.commons.logging. Log:error(Object, Throwable)











method bool equals(Object)
pre(soft) init'ed(o.id)
pre(soft) this.id != null
postinit'ed(return_value)
test_vectorthis == o: {0}, {1}










method String getCommentConfirmationStrategyName()
prethis.properties != null
postinit'ed(return_value)
unanalyzedcall on java.util.Properties:getProperty










method CommentConfirmationStrategy getCommentConfirmation Strategy()
preinit'ed(this.commentConfirmationStrategy)
postreturn_value == this.commentConfirmationStrategy
postinit'ed(return_value)










method String getTrackBackConfirmationStrategyName()
prethis.properties != null
postinit'ed(return_value)
unanalyzedcall on java.util.Properties:getProperty










method TrackBackConfirmationStrategy getTrackBackConfirma tionStrategy()
preinit'ed(this.trackBackConfirmationStrategy)
postreturn_value == this.trackBackConfirmationStrategy
postinit'ed(return_value)










method bool isRichTextEditorForCommentsEnabled()
prethis.properties != null
postinit'ed(return_value)
unanalyzedcall on java.util.Properties:getProperty
test_vectorjava.lang.String:equalsIgnoreCase(...)@1822: {0}, {1}
test_vectorjava.util.Properties:getProperty(...)@175: Addr_Set{null}, Inverse{null}










method EmailSubscriptionList getEmailSubscriptionList()
preinit'ed(this.emailSubscriptionList)
postreturn_value == this.emailSubscriptionList
postinit'ed(return_value)










method List getNewsFeedEntries()
preinit'ed(this.id)
postreturn_value != null
postnew LinkedList(getNewsFeedEntries#1*) num objects <= 1
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.util.LinkedList










method List getRecentNewsFeedEntries()
preinit'ed(this.id)
prethis.properties != null
postinit'ed(return_value)
postnew LinkedList(getNewsFeedEntries#1*) num objects <= 1
unanalyzedcall on java.util.Properties:getProperty
unanalyzedcall on java.lang.Integer:parseInt
unanalyzedcall on getInstance
unanalyzedcall on getNewsFeedEntries
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.util.LinkedList










method List getStringsFromProperty(String)
prethis.properties != null
presumptionvalues.length@1845 <= 232-1
presumptionvalues[i]@1845 != null
postreturn_value == &new ArrayList(getStringsFromPr operty#1)
postnew ArrayList(getStringsFromProperty#1) num objects == 1
unanalyzedcall on java.util.Properties:getProperty
test_vectorjava.lang.String:length(...)@1844: {0}, {1..232-1}
test_vectorjava.lang.String:startsWith(...)@1847: {1}, {0}
test_vectorjava.util.Properties:getProperty(...)@175: Addr_Set{null}, Inverse{null}