GlobalClassLoader.java


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


Filter Options
Annotation Kind:
pre
presumption
post
unanalyzed
test_vector


  • void com.dmdirc.plugins.GlobalClassLoader()

  • Kind Annotation Text
    postnew HashMap(GlobalClassLoader#1) num objects == 1
    postthis.resourcesList == &new HashMap(GlobalClassL oader#1)

  • com.dmdirc.plugins.GlobalClassLoader__static_init

  • Kind Annotation Text

  • Class defineClass(String, byte[])

  • Kind Annotation Text
    predata != null
    predata.length <= 232-1
    postinit'ed(return_value)

  • byte[] getClassData(String)

  • Kind Annotation Text
    pre(soft) classname != null
    pre(soft) this.resourcesList != null
    presumptioncom.dmdirc.util.resourcemanager.ResourceManager:get ResourceManager(...)@142 != null
    postinit'ed(return_value)

  • GlobalClassLoader getGlobalClassLoader()

  • Kind Annotation Text
    preinit'ed(me)
    postme != null
    postme == One-of{old me, &amp;new GlobalClassLoader(get GlobalClassLoader#1)}
    postnew GlobalClassLoader(getGlobalClassLoader#1) num objects <= 1
    postnew GlobalClassLoader(getGlobalClassLoader#1). resourcesList == &amp;new HashMap(GlobalClassLoader #1)
    postnew HashMap(GlobalClassLoader#1) num objects <= 1
    postreturn_value == me
    unanalyzedcall on java.lang.ClassLoader
    unanalyzedcall on java.util.HashMap
    test_vectorme: Inverse{null}, Addr_Set{null}

  • bool isClassLoaded(String)

  • Kind Annotation Text
    postinit'ed(return_value)

  • Class loadClass(String)

  • Kind Annotation Text
    pre(soft) init'ed(com/dmdirc/plugins/PluginManager. me)
    pre(soft) me != null
    pre(soft) name != null
    pre(soft) this.resourcesList != null
    presumptiondata.length <= 232-1
    presumptiongetPluginClassLoader(...).pluginInfo.url@111 != null
    presumptiongetPluginClassLoader(...).pluginInfo@111 != null
    presumptiongetPluginManager(...).knownPlugins != null
    presumptionjava.util.Iterator:next(...)@111 != null
    presumptionme.resourcesList@113 != null
    presumptionpi.myClasses@111 != null
    postcom/dmdirc/plugins/PluginManager.me == One-of{old com/dmdirc/plugins/PluginManager.me, &amp;new PluginManager(getPluginManager#1)}
    postinit'ed(com/dmdirc/plugins/PluginManager.me)
    postinit'ed(me)
    postinit'ed(new GlobalClassLoader(getGlobalClassLoader# 1).resourcesList)
    postinit'ed(new PluginManager(getPluginManager#1). knownPlugins)
    postinit'ed(new PluginManager(getPluginManager#1). myDir)
    postinit'ed(new PluginManager(getPluginManager#1). services)
    postinit'ed(return_value)
    postjava.lang.StringBuilder:toString(...)._tainted == 0
    postnew GlobalClassLoader(getGlobalClassLoader#1) num objects == 0
    postnew HashMap(GlobalClassLoader#1) num objects == 0
    postnew HashMap(PluginManager#2) num objects <= 1
    postnew Hashtable(PluginManager#1) num objects <= 1
    postnew PluginClassLoader(getSubClassLoader#1) num objects == 0, if init'ed
    postnew PluginClassLoader(getSubClassLoader#1). pluginInfo == null
    postnew PluginManager(getPluginManager#1) num objects <= 1
    unanalyzedcall on addError
    unanalyzedcall on addPlugin
    unanalyzedcall on com.dmdirc.Main:getConfigDir
    unanalyzedcall on com.dmdirc.actions.ActionManager:addListene r
    unanalyzedcall on com.dmdirc.actions.ActionManager:processEve nt
    unanalyzedcall on com.dmdirc.plugins.GlobalClassLoader:define Class
    unanalyzedcall on com.dmdirc.plugins.GlobalClassLoader:findLo adedClass
    unanalyzedcall on com.dmdirc.plugins.PluginClassLoader:define Class
    unanalyzedcall on com.dmdirc.plugins.PluginClassLoader:findLo adedClass
    unanalyzedcall on com.dmdirc.plugins.PluginClassLoader:getPar ent
    unanalyzedcall on com.dmdirc.plugins.PluginClassLoader:resolv eClass
    unanalyzedcall on com.dmdirc.plugins.PluginException:getMessa ge
    unanalyzedcall on com.dmdirc.plugins.PluginInfo
    unanalyzedcall on com.dmdirc.updater.components. PluginComponent
    unanalyzedcall on com.dmdirc.util.ConfigFile:getFlatDomain
    unanalyzedcall on com.dmdirc.util.ConfigFile:getKeyDomain
    unanalyzedcall on com.dmdirc.util.ConfigFile:isFlatDomain
    unanalyzedcall on com.dmdirc.util.ConfigFile:isKeyDomain
    unanalyzedcall on com.dmdirc.util.resourcemanager. ResourceManager:getResourceBytes
    unanalyzedcall on com.dmdirc.util.resourcemanager. ResourceManager:getResourceManager
    unanalyzedcall on com.dmdirc.util.resourcemanager. ResourceManager:getResourcesStartingWith
    unanalyzedcall on com.dmdirc.util.resourcemanager. ResourceManager:resourceExists
    unanalyzedcall on delPlugin
    unanalyzedcall on delProvider
    unanalyzedcall on getClassList
    unanalyzedcall on getFullFilename
    unanalyzedcall on getName
    unanalyzedcall on getPersistentClasses
    unanalyzedcall on getPluginClassLoader
    unanalyzedcall on getPluginInfoByName
    unanalyzedcall on getPluginInfos
    unanalyzedcall on getPluginManager
    unanalyzedcall on getPossiblePluginInfos
    unanalyzedcall on getResourceManager
    unanalyzedcall on isPersistent
    unanalyzedcall on isUnloadable
    unanalyzedcall on java.io.File
    unanalyzedcall on java.io.File:exists
    unanalyzedcall on java.io.File:getName
    unanalyzedcall on java.io.File:getPath
    unanalyzedcall on java.io.File:isDirectory
    unanalyzedcall on java.io.File:isFile
    unanalyzedcall on java.io.File:listFiles
    unanalyzedcall on java.lang.ClassLoader
    unanalyzedcall on java.lang.ClassLoader:loadClass
    unanalyzedcall on java.lang.ClassNotFoundException
    unanalyzedcall on java.lang.Exception
    unanalyzedcall on java.lang.Exception:getMessage
    unanalyzedcall on java.lang.Exception:printStackTrace
    unanalyzedcall on java.lang.NoClassDefFoundError:getMessage
    unanalyzedcall on java.lang.String:endsWith
    unanalyzedcall on java.lang.String:equalsIgnoreCase
    unanalyzedcall on java.lang.String:isEmpty
    unanalyzedcall on java.lang.String:length
    unanalyzedcall on java.lang.String:matches
    unanalyzedcall on java.lang.String:replace
    unanalyzedcall on java.lang.String:replaceAll
    unanalyzedcall on java.lang.String:substring
    unanalyzedcall on java.lang.String:toLowerCase
    unanalyzedcall on java.lang.System:getProperty
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.net.MalformedURLException:getMessage
    unanalyzedcall on java.net.URL
    unanalyzedcall on java.net.URL:getPath
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.Collection:iterator
    unanalyzedcall on java.util.HashMap
    unanalyzedcall on java.util.Hashtable
    unanalyzedcall on java.util.LinkedList
    unanalyzedcall on java.util.LinkedList:add
    unanalyzedcall on java.util.LinkedList:isEmpty
    unanalyzedcall on java.util.LinkedList:pop
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:clear
    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:put
    unanalyzedcall on java.util.Map:remove
    unanalyzedcall on java.util.Map:values
    unanalyzedcall on java.util.Timer
    unanalyzedcall on java.util.Timer:schedule
    unanalyzedcall on java.util.TimerTask
    unanalyzedcall on loadClass
    unanalyzedcall on onUnload
    unanalyzedcall on unloadPlugin

  • Class loadClass(String, PluginInfo)

  • Kind Annotation Text
    pre(soft) pi.url != null
    pre(soft) this.resourcesList != null
    preinit'ed(pi.metaData)
    prepi != null
    postinit'ed(return_value)
    postpossibly_updated(pi.myResourceManager)
    unanalyzedcall on com.dmdirc.util.ConfigFile:getFlatDomain
    unanalyzedcall on com.dmdirc.util.ConfigFile:isFlatDomain
    unanalyzedcall on com.dmdirc.util.resourcemanager. ResourceManager:getResourceManager
    unanalyzedcall on com.dmdirc.util.resourcemanager. ResourceManager:getResourcesStartingWith
    unanalyzedcall on java.lang.String:matches
    unanalyzedcall on java.lang.String:replace
    unanalyzedcall on java.lang.String:replaceAll
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.net.URL:getPath
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.List:add
    unanalyzedcall on java.util.List:contains
    unanalyzedcall on java.util.List:iterator
    unanalyzedcall on java.util.Timer
    unanalyzedcall on java.util.Timer:schedule
    unanalyzedcall on java.util.TimerTask
    test_vectorjava.util.Iterator:hasNext(...)@84: {0}, {1}
    test_vectorjava.util.Map:containsKey(...)@85: {1}, {0}