ConfigManager.java


current inspection = 2009-09-03 21:56:13 (id #1)


Filter Options
Annotation Kind:
pre
presumption
post
unanalyzed
test_vector


  • void addChangeListener(String, ConfigChangeListener)

  • Kind Annotation Text
    prethis.listeners != null
    unanalyzedcall on com.dmdirc.util.MapList:add
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj

  • void addChangeListener(String, String, ConfigChangeListener)

  • Kind Annotation Text
    prethis.listeners != null
    unanalyzedcall on com.dmdirc.util.MapList:add
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj

  • void addListener(String, ConfigChangeListener)

  • Kind Annotation Text
    prethis.listeners != null

  • void checkIdentity(Identity)

  • Kind Annotation Text
    pre(soft) identity != null
    pre(soft) identity.file != null
    pre(soft) identity.listeners != null
    pre(soft) identity.myTarget != null
    pre(soft) identity.myTarget.type != null
    pre(soft) init'ed(com.dmdirc.config.ConfigManager$1__ static_init.new int[](ConfigManager$1__static_init# 1)[...])
    pre(soft) init'ed(identity.myTarget.data)
    pre(soft) init'ed(this.channel)
    pre(soft) init'ed(this.ircd)
    pre(soft) init'ed(this.network)
    pre(soft) init'ed(this.server)
    pre(soft) this.listeners != null
    prethis.sources != null
    presumptionjava.util.Map:keySet(...)@262 != null
    unanalyzedcall on com.dmdirc.config.ConfigTarget$TYPE:ordinal
    unanalyzedcall on com.dmdirc.interfaces.ConfigChangeListener: configChanged
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomain
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomains
    unanalyzedcall on com.dmdirc.util.ConfigFile:isKeyDomain
    unanalyzedcall on com.dmdirc.util.MapList:containsKey
    unanalyzedcall on com.dmdirc.util.MapList:get
    unanalyzedcall on getTarget
    unanalyzedcall on hasOption
    unanalyzedcall on java.lang.String:equals
    unanalyzedcall on java.lang.String:equalsIgnoreCase
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.HashMap
    unanalyzedcall on java.util.HashSet
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:addAll
    unanalyzedcall on java.util.List:iterator
    unanalyzedcall on java.util.Map:containsKey
    unanalyzedcall on java.util.Map:get
    unanalyzedcall on java.util.Map:keySet
    test_vectorjava.util.Iterator:hasNext(...)@261: {0}, {1}
    test_vectorjava.util.Iterator:hasNext(...)@262: {0}, {1}
    test_vectorjava.util.List:contains(...)@253: {1}, {0}

  • com.dmdirc.config.ConfigManager$1__static_init

  • Kind Annotation Text
    pre(soft) init'ed(com.dmdirc.config.ConfigTarget$TYPE_ _static_init.new ConfigTarget$TYPE[](ConfigTarget$T YPE__static_init#9)[...])
    presumptioncom.dmdirc.config.ConfigTarget_TYPE:ordinal(... )@221 in {0..7}
    postnew int[](ConfigManager$1__static_init#1) num objects == 1

  • void com.dmdirc.config.ConfigManager(String, String, String)

  • Kind Annotation Text
    pre(soft) init'ed(com.dmdirc.config.ConfigManager$1__ static_init.new int[](ConfigManager$1__static_init# 1)[...])
    postinit'ed(java.lang.StringBuilder:toString(...)._ tainted)
    postinit'ed(this.ircd)
    postinit'ed(this.network)
    postinit'ed(this.server)
    postjava.lang.StringBuilder:toString(...)._tainted == network._tainted
    postnew ArrayList(getSources#1) num objects == 1
    postnew MapList(ConfigManager#1) num objects == 1
    postthis.channel == &java.lang.StringBuilder:toStri ng(...)
    postthis.ircd == ircd
    postthis.listeners == &new MapList(ConfigManager#1)
    postthis.network == network
    postthis.server == server
    postthis.sources == &new ArrayList(getSources#1)
    unanalyzedcall on addConfigManager
    unanalyzedcall on addListener
    unanalyzedcall on com.dmdirc.config.ConfigSource
    unanalyzedcall on com.dmdirc.config.ConfigTarget$TYPE:ordinal
    unanalyzedcall on com.dmdirc.logger.Logger:assertTrue
    unanalyzedcall on com.dmdirc.util.MapList
    unanalyzedcall on getSources
    unanalyzedcall on getTarget
    unanalyzedcall on java.lang.String:equalsIgnoreCase
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.Collections:sort
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:iterator

  • void com.dmdirc.config.ConfigManager(String, String, String, String)

  • Kind Annotation Text
    pre(soft) init'ed(com.dmdirc.config.ConfigManager$1__ static_init.new int[](ConfigManager$1__static_init# 1)[...])
    presumptionidentity.listeners@102 != null
    presumptionjava.util.Iterator:next(...)@102 != null
    postinit'ed(java.lang.StringBuilder:toString(...)._ tainted)
    postinit'ed(this.ircd)
    postinit'ed(this.network)
    postinit'ed(this.server)
    postjava.lang.StringBuilder:toString(...)._tainted == channel._tainted | network._tainted
    postnew ArrayList(getSources#1) num objects == 1
    postnew MapList(ConfigManager#1) num objects == 1
    postthis.channel == &java.lang.StringBuilder:toStri ng(...)
    postthis.ircd == ircd
    postthis.listeners == &new MapList(ConfigManager#1)
    postthis.network == network
    postthis.server == server
    postthis.sources == &new ArrayList(getSources#1)
    unanalyzedcall on com.dmdirc.config.ConfigTarget$TYPE:ordinal
    unanalyzedcall on com.dmdirc.logger.Logger:assertTrue
    unanalyzedcall on getTarget
    unanalyzedcall on java.lang.String:equalsIgnoreCase
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.Collections:sort
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:iterator
    test_vectorjava.util.Iterator:hasNext(...)@102: {0}, {1}

  • com.dmdirc.config.ConfigManager__static_init

  • Kind Annotation Text
    postnew TreeMap(ConfigManager__static_init#1) num objects == 1
    poststats == &new TreeMap(ConfigManager__static_ init#1)

  • void configChanged(String, String)

  • Kind Annotation Text
    prethis.listeners != null
    presumptionjava.util.Iterator:next(...)@424 != null
    test_vectorcom.dmdirc.util.MapList:containsKey(...)@416: {0}, {1}
    test_vectorcom.dmdirc.util.MapList:containsKey(...)@420: {0}, {1}
    test_vectorjava.util.Iterator:hasNext(...)@424: {0}, {1}

  • void doStats(String, String)

  • Kind Annotation Text
    presumptionjava.lang.Integer:intValue(...)@348 <= 232-2
    presumptionjava.util.Map:get(...)@348 != null

  • Set getDomains()

  • Kind Annotation Text
    prethis.sources != null
    presumptionjava.util.Iterator:next(...)@280 != null
    presumptionsource.file@280 != null
    postnew HashSet(getDomains#1) num objects == 1
    postreturn_value == &amp;new HashSet(getDomains#1)
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomains
    unanalyzedcall on java.util.HashSet
    unanalyzedcall on java.util.Map:keySet
    test_vectorjava.util.Iterator:hasNext(...)@280: {1}, {0}

  • String getOption(String, String)

  • Kind Annotation Text
    prethis.sources != null
    presumptionjava.util.Iterator:hasNext(...)@115 == 1
    presumptionjava.util.Iterator:next(...)@115 != null
    presumptionsource.file@115 != null
    postinit'ed(return_value)
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomain
    unanalyzedcall on com.dmdirc.util.ConfigFile:isKeyDomain
    unanalyzedcall on java.lang.Integer:intValue
    unanalyzedcall on java.lang.Integer:valueOf
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.util.Map:containsKey
    unanalyzedcall on java.util.Map:get
    unanalyzedcall on java.util.Map:put

  • Map getOptions(String)

  • Kind Annotation Text
    prethis.sources != null
    presumptionjava.util.List:get(...).file@153 != null
    presumptionjava.util.List:get(...)@153 != null
    presumptionjava.util.List:size(...)@152 >= -231+1
    postnew HashMap(getOptions#1) num objects == 1
    postreturn_value == &amp;new HashMap(getOptions#1)
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomain
    unanalyzedcall on java.util.HashMap

  • Identity getScope(String, String)

  • Kind Annotation Text
    prethis.sources != null
    presumptionjava.util.Iterator:next(...)@202 != null
    presumptionsource.file@202 != null
    postinit'ed(return_value)
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomain
    unanalyzedcall on com.dmdirc.util.ConfigFile:isKeyDomain
    unanalyzedcall on java.util.Map:containsKey
    test_vectorjava.util.Iterator:hasNext(...)@202: {1}, {0}

  • List getSources()

  • Kind Annotation Text
    postnew ArrayList(getSources#1) num objects == 1
    postreturn_value == &amp;new ArrayList(getSources#1)

  • Map getStats()

  • Kind Annotation Text
    postreturn_value == &amp;new TreeMap(ConfigManager__ static_init#1)

  • bool hasOption(String, String)

  • Kind Annotation Text
    prethis.sources != null
    presumptionjava.util.Iterator:next(...)@131 != null
    presumptionsource.file@131 != null
    postinit'ed(return_value)
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomain
    unanalyzedcall on com.dmdirc.util.ConfigFile:isKeyDomain
    unanalyzedcall on java.lang.Integer:intValue
    unanalyzedcall on java.lang.Integer:valueOf
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.util.Map:containsKey
    unanalyzedcall on java.util.Map:get
    unanalyzedcall on java.util.Map:put
    test_vectorjava.util.Iterator:hasNext(...)@131: {1}, {0}

  • bool identityApplies(Identity)

  • Kind Annotation Text
    pre(soft) init'ed(com.dmdirc.config.ConfigManager$1__ static_init.new int[](ConfigManager$1__static_init# 1)[...])
    pre(soft) init'ed(identity.myTarget.data)
    pre(soft) init'ed(this.channel)
    pre(soft) init'ed(this.ircd)
    pre(soft) init'ed(this.network)
    pre(soft) init'ed(this.server)
    preidentity != null
    preidentity.myTarget != null
    preidentity.myTarget.type != null
    presumptioncom.dmdirc.config.ConfigTarget_TYPE:ordinal(... )@221 in {0..7}
    postinit'ed(return_value)
    test_vectorcom.dmdirc.config.ConfigManager$1__static_init.new int[](ConfigManager$1__static_init#1)[...]: {1}, {2}, {3}, {4}, {5}, {-231..0, 6..232-1}

  • void migrate(String, String, String)

  • Kind Annotation Text
    pre(soft) init'ed(com.dmdirc.config.ConfigManager$1__ static_init.new int[](ConfigManager$1__static_init# 1)[...])
    pre(soft) this.listeners != null
    pre(soft) this.sources != null
    postinit'ed(java.lang.StringBuilder:toString(...)._ tainted)
    postinit'ed(this.ircd)
    postinit'ed(this.network)
    postinit'ed(this.server)
    postjava.lang.StringBuilder:toString(...)._tainted == network._tainted
    postthis.channel == &amp;java.lang.StringBuilder:toStri ng(...)
    postthis.ircd == ircd
    postthis.network == network
    postthis.server == server
    unanalyzedcall on addListener
    unanalyzedcall on checkIdentity
    unanalyzedcall on com.dmdirc.config.ConfigTarget$TYPE:ordinal
    unanalyzedcall on com.dmdirc.interfaces.ConfigChangeListener: configChanged
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomain
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomains
    unanalyzedcall on com.dmdirc.util.ConfigFile:isKeyDomain
    unanalyzedcall on com.dmdirc.util.MapList:containsKey
    unanalyzedcall on com.dmdirc.util.MapList:get
    unanalyzedcall on equals
    unanalyzedcall on getDomains
    unanalyzedcall on getOptions
    unanalyzedcall on getSources
    unanalyzedcall on getTarget
    unanalyzedcall on hasOption
    unanalyzedcall on java.lang.String:equals
    unanalyzedcall on java.lang.String:equalsIgnoreCase
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.ArrayList:iterator
    unanalyzedcall on java.util.Collections:sort
    unanalyzedcall on java.util.HashMap
    unanalyzedcall on java.util.HashSet
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:addAll
    unanalyzedcall on java.util.List:contains
    unanalyzedcall on java.util.List:iterator
    unanalyzedcall on java.util.List:remove
    unanalyzedcall on java.util.Map:containsKey
    unanalyzedcall on java.util.Map:get
    unanalyzedcall on java.util.Map:keySet
    unanalyzedcall on java.util.Set:iterator
    unanalyzedcall on removeIdentity
    unanalyzedcall on removeListener

  • void migrate(String, String, String, String)

  • Kind Annotation Text
    pre(soft) init'ed(com.dmdirc.config.ConfigManager$1__ static_init.new int[](ConfigManager$1__static_init# 1)[...])
    pre(soft) this.listeners != null
    pre(soft) this.sources != null
    presumptionidentity.file@326 != null
    presumptionidentity.file@333 != null
    presumptionidentity.listeners@326 != null
    presumptionidentity.listeners@333 != null
    presumptionidentity.myTarget.type@326 != null
    presumptionidentity.myTarget.type@333 != null
    presumptionidentity.myTarget@326 != null
    presumptionidentity.myTarget@333 != null
    presumptionjava.util.ArrayList:iterator(...)@326 != null
    presumptionjava.util.Iterator:next(...)@326 != null
    presumptionjava.util.Iterator:next(...)@333 != null
    postinit'ed(java.lang.StringBuilder:toString(...)._ tainted)
    postinit'ed(this.ircd)
    postinit'ed(this.network)
    postinit'ed(this.server)
    postthis.channel == &amp;java.lang.StringBuilder:toStri ng(...)
    postthis.ircd == ircd
    postthis.network == network
    postthis.server == server
    unanalyzedcall on addListener
    unanalyzedcall on com.dmdirc.config.ConfigTarget$TYPE:ordinal
    unanalyzedcall on com.dmdirc.interfaces.ConfigChangeListener: configChanged
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomain
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomains
    unanalyzedcall on com.dmdirc.util.ConfigFile:isKeyDomain
    unanalyzedcall on com.dmdirc.util.MapList:containsKey
    unanalyzedcall on com.dmdirc.util.MapList:get
    unanalyzedcall on equals
    unanalyzedcall on getDomains
    unanalyzedcall on getOptions
    unanalyzedcall on getTarget
    unanalyzedcall on hasOption
    unanalyzedcall on java.lang.String:equals
    unanalyzedcall on java.lang.String:equalsIgnoreCase
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.Collections:sort
    unanalyzedcall on java.util.HashMap
    unanalyzedcall on java.util.HashSet
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:addAll
    unanalyzedcall on java.util.List:contains
    unanalyzedcall on java.util.List:iterator
    unanalyzedcall on java.util.List:remove
    unanalyzedcall on java.util.Map:containsKey
    unanalyzedcall on java.util.Map:get
    unanalyzedcall on java.util.Map:keySet
    unanalyzedcall on java.util.Set:iterator
    unanalyzedcall on removeListener
    test_vectorjava.util.Iterator:hasNext(...)@326: {0}, {1}
    test_vectorjava.util.Iterator:hasNext(...)@333: {0}, {1}

  • void removeIdentity(Identity)

  • Kind Annotation Text
    pre(soft) identity != null
    pre(soft) identity.file != null
    pre(soft) identity.listeners != null
    pre(soft) this.listeners != null
    prethis.sources != null
    presumptionjava.util.Iterator:next(...)@187 != null
    presumptionjava.util.Map:keySet(...)@174 != null
    presumptionsetting.length@187 >= 2
    unanalyzedcall on com.dmdirc.interfaces.ConfigChangeListener: configChanged
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomain
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomains
    unanalyzedcall on com.dmdirc.util.ConfigFile:isKeyDomain
    unanalyzedcall on com.dmdirc.util.MapList:containsKey
    unanalyzedcall on com.dmdirc.util.MapList:get
    unanalyzedcall on hasOption
    unanalyzedcall on java.lang.String:equals
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.HashMap
    unanalyzedcall on java.util.HashSet
    unanalyzedcall on java.util.List:addAll
    unanalyzedcall on java.util.List:iterator
    unanalyzedcall on java.util.List:remove
    unanalyzedcall on java.util.Map:containsKey
    unanalyzedcall on java.util.Map:get
    unanalyzedcall on java.util.Map:keySet
    test_vectorjava.util.Iterator:hasNext(...)@173: {0}, {1}
    test_vectorjava.util.Iterator:hasNext(...)@174: {0}, {1}
    test_vectorjava.util.Iterator:hasNext(...)@187: {0}, {1}
    test_vectorjava.util.List:contains(...)@166: {1}, {0}

  • void removeListener(ConfigChangeListener)

  • Kind Annotation Text
    prethis.listeners != null