Package org.apache.bcel.verifier
Class VerifierFactory
- java.lang.Object
-
- org.apache.bcel.verifier.VerifierFactory
-
public class VerifierFactory extends java.lang.Object
This class produces instances of the Verifier class. Its purpose is to make sure that they are singleton instances with respect to the class name they operate on. That means, for every class (represented by a unique fully qualified class name) there is exactly one Verifier.- See Also:
Verifier
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.Map<java.lang.String,Verifier>
MAP
The HashMap that holds the data about the already-constructed Verifier instances.private static java.util.List<VerifierFactoryObserver>
OBSVERVERS
The VerifierFactoryObserver instances that observe the VerifierFactory.
-
Constructor Summary
Constructors Modifier Constructor Description private
VerifierFactory()
The VerifierFactory is not instantiable.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
attach(VerifierFactoryObserver o)
Adds the VerifierFactoryObserver o to the list of observers.static void
clear()
Clears the factory.static void
detach(VerifierFactoryObserver o)
Removes the VerifierFactoryObserver o from the list of observers.static Verifier
getVerifier(java.lang.String fullyQualifiedClassName)
Returns the (only) verifier responsible for the class with the given name.static Verifier[]
getVerifiers()
Returns all Verifier instances created so far.private static void
notify(java.lang.String fullyQualifiedClassName)
Notifies the observers of a newly generated Verifier.
-
-
-
Field Detail
-
MAP
private static final java.util.Map<java.lang.String,Verifier> MAP
The HashMap that holds the data about the already-constructed Verifier instances.
-
OBSVERVERS
private static final java.util.List<VerifierFactoryObserver> OBSVERVERS
The VerifierFactoryObserver instances that observe the VerifierFactory.
-
-
Method Detail
-
attach
public static void attach(VerifierFactoryObserver o)
Adds the VerifierFactoryObserver o to the list of observers.
-
clear
public static void clear()
Clears the factory.- Since:
- 6.6.2
-
detach
public static void detach(VerifierFactoryObserver o)
Removes the VerifierFactoryObserver o from the list of observers.
-
getVerifier
public static Verifier getVerifier(java.lang.String fullyQualifiedClassName)
Returns the (only) verifier responsible for the class with the given name. Possibly a new Verifier object is transparently created.- Returns:
- the (only) verifier responsible for the class with the given name.
-
getVerifiers
public static Verifier[] getVerifiers()
Returns all Verifier instances created so far. This is useful when a Verifier recursively lets the VerifierFactory create other Verifier instances and if you want to verify the transitive hull of referenced class files.
-
notify
private static void notify(java.lang.String fullyQualifiedClassName)
Notifies the observers of a newly generated Verifier.
-
-