Packageweavejs.api.core
Interfacepublic interface IClassRegistry
Implementors ClassRegistryImpl



Public Methods
 MethodDefined By
  
getClassInfo(class_or_instance:Object):Object
Gets FlexJS class info.
IClassRegistry
  
getClassName(definition:Object):String
Gets the qualified class name from a class definition or an object instance.
IClassRegistry
  
getDefinition(name:String):*
Looks up a static definition by name.
IClassRegistry
  
getDisplayName(theImplementation:Class):String
This will get the displayName that was specified when an implementation was registered with registerImplementation().
IClassRegistry
  
getImplementations(theInterface:Class):Array
This will get an Array of class definitions that were previously registered as implementations of the specified interface.
IClassRegistry
  
getSingletonInstance(theInterface:Class):*
This function returns the singleton instance for a registered interface.
IClassRegistry
  
registerClass(definition:Class, qualifiedName:String, interfaces:Array = null, displayName:String = null):void
Registers a class under a given qualified name and adds metadata about implementing interfaces.
IClassRegistry
  
registerImplementation(theInterface:Class, theImplementation:Class, displayName:String = null):void
This will register an implementation of an interface.
IClassRegistry
Method Detail
getClassInfo()method
public function getClassInfo(class_or_instance:Object):Object

Gets FlexJS class info.

Parameters

class_or_instance:Object — Either a Class or an instance of a Class.

Returns
Object — FlexJS class info object containing properties "variables", "accessors", and "methods", each being an Array of Objects like {type:String, declaredBy:String}
getClassName()method 
public function getClassName(definition:Object):String

Gets the qualified class name from a class definition or an object instance.

Parameters

definition:Object

Returns
String
getDefinition()method 
public function getDefinition(name:String):*

Looks up a static definition by name.

Parameters

name:String

Returns
*
getDisplayName()method 
public function getDisplayName(theImplementation:Class):String

This will get the displayName that was specified when an implementation was registered with registerImplementation().

Parameters

theImplementation:Class — An implementation that was registered with registerImplementation().

Returns
String — The display name for the implementation.
getImplementations()method 
public function getImplementations(theInterface:Class):Array

This will get an Array of class definitions that were previously registered as implementations of the specified interface.

Parameters

theInterface:Class — The interface class.

Returns
Array — An Array of class definitions that were previously registered as implementations of the specified interface.
getSingletonInstance()method 
public function getSingletonInstance(theInterface:Class):*

This function returns the singleton instance for a registered interface. This method should not be called at static initialization time, because the implementation may not have been registered yet.

Parameters

theInterface:Class — An interface to a singleton class.

Returns
* — The singleton instance that implements the specified interface.
registerClass()method 
public function registerClass(definition:Class, qualifiedName:String, interfaces:Array = null, displayName:String = null):void

Registers a class under a given qualified name and adds metadata about implementing interfaces.

Parameters

definition:Class — The class definition.
 
qualifiedName:String — The qualified class name under which to register the class definition.
 
interfaces:Array (default = null) — An Array of Class objects that are the interfaces the class implements.
 
displayName:String (default = null) — An optional display name for the class definition.

registerImplementation()method 
public function registerImplementation(theInterface:Class, theImplementation:Class, displayName:String = null):void

This will register an implementation of an interface.

Parameters

theInterface:Class — The interface class.
 
theImplementation:Class — An implementation of the interface.
 
displayName:String (default = null) — An optional display name for the implementation.