| java.lang.Object org.cougaar.planning.ldm.plan.ClusterObjectFactoryImpl org.cougaar.planning.ldm.PlanningFactoryImpl
Method Summary | |
final public void | addAssetFactory(EssentialAssetFactory af) register an assetfactory with us so that we can
(1) find an asset class from an asset name and (2)
can figure out which factory to use for a given
asset class. | final public void | addPropertyGroupFactory(Object pf) register a propertyfactory with us so that short (no package!)
property group names may be used in createPropertyGroup(String). | final public Asset | cloneInstance(Asset asset) make an evil twin of an instance. | final public boolean | containsAssetFactory(Object f) | final public boolean | containsPropertyGroupFactory(Object pf) | final public Asset | copyInstance(Asset asset) Make a copy of an instance. | public Object | create(String objectname) | public Object | create(Class objectclass) | final public Asset | createAggregate(Asset prototypeAsset, int quantity) Create an aggregate asset instance of a prototypical asset. | final public Asset | createAggregate(String prototypeAssetTypeId, int quantity) Create an aggregate asset instance of a prototypical asset. | final public Asset | createAsset(String classname) Create a raw Asset instance for use by LDM Plugins
which are PrototypeProviders.
The asset created will have *no* propertygroups.
This *always* creates a prototype of the specific class.
most plugins want to call getPrototype(String typeid);
Parameters: classname - One of the defined LDM class names. | final public Asset | createAsset(Class assetClass) Create a raw Asset instance for use by LDM Plugins
which are PrototypeProviders. | final public Asset | createInstance(Asset prototypeAsset) Create an instance of a prototypical asset.
This variation does not add an ItemIdentificationCode
to the constructed asset instance. | final public Asset | createInstance(String prototypeAssetTypeId) Create an instance of a prototypical asset.
This variation does not add an ItemIdentificationCode
to the constructed asset instance. | final public Asset | createInstance(Asset prototypeAsset, String uniqueId) Create an instance of a prototypical asset, specifying an initial
UniqueID for its itemIdentificationPG . | final public Asset | createInstance(String prototypeAssetTypeId, String uniqueId) Create an instance of a prototypical asset, specifying an initial UniqueID
for its itemIdentificationPG. | public Asset | createInstance(String prototypeAssetTypeId, int quantity) Create an aggregate asset instance of a prototypical asset. | final public PropertyGroup | createPropertyGroup(String propertyName) create a new property group, given a PropertyGroup name. | final public PropertyGroup | createPropertyGroup(Class propertyClass) create a new property group, given a PropertyGroupGroup name. | final public PropertyGroup | createPropertyGroup(PropertyGroup originalProperty) | final public Asset | createPrototype(String classname, String typeid) convenience routine for creating prototype assets. | final public Asset | createPrototype(Class assetclass, String typeid) convenience routine for creating prototype assets. | final public Asset | createPrototype(String classname, String typeid, String nomen) convenience routine for creating prototype assets. | final public Asset | getPrototype(String aTypeName) Find a prototype Asset based on it's typeid description,
(e.g. |
PlanningFactoryImpl | public PlanningFactoryImpl(LDMServesPlugin ldm)(Code) | | Constructor. Create a new instance of the Factory.
Parameters: ldm - LDM object so that Factory can provide convenience aliases to prototype cache, etc. |
addAssetFactory | final public void addAssetFactory(EssentialAssetFactory af)(Code) | | register an assetfactory with us so that we can
(1) find an asset class from an asset name and (2)
can figure out which factory to use for a given
asset class.
|
addPropertyGroupFactory | final public void addPropertyGroupFactory(Object pf)(Code) | | register a propertyfactory with us so that short (no package!)
property group names may be used in createPropertyGroup(String).
Either a PropertyGroupFactory class or an instance of such may be passed in.
|
cloneInstance | final public Asset cloneInstance(Asset asset)(Code) | | make an evil twin of an instance. The result will be a shallow copy of the
original (as in copyInstance), with locked PropertyGroups. The copy
will have the same UID as the original, so will, in a systems sense
actually be the same asset. It could be very bad for multiple clones of an
asset to show up in someone's Blackboard.
This method should be used when subsetting the capabilities of an asset
for some other consumer. Eg. when you want to allow a client to use just one
capability of your organization.
Note: This method name may change.
|
containsAssetFactory | final public boolean containsAssetFactory(Object f)(Code) | | |
containsPropertyGroupFactory | final public boolean containsPropertyGroupFactory(Object pf)(Code) | | true iff the factory parameter is already registered as apropertygroup factory. |
copyInstance | final public Asset copyInstance(Asset asset)(Code) | | Make a copy of an instance. The result will be a shallow copy
of the original - that is, it will share most PropertyGroups with the
original instance. The differences will be that the copy's PGs will
be locked and the copy will have a different UID.
The copy will truly be a different asset which happens to (initially) have
identical propertygroups.
This method should be used to create new assets which are very much
like another instance. The use of this method is a less-desirable alternative
to creating a new instance of your original's prototype and then adding back
any extra properties. This is less desirable because it doesn't allow the
LDM to participate in the construction of the copy.
|
createAggregate | final public Asset createAggregate(Asset prototypeAsset, int quantity)(Code) | | Create an aggregate asset instance of a prototypical asset.
|
createAggregate | final public Asset createAggregate(String prototypeAssetTypeId, int quantity)(Code) | | Create an aggregate asset instance of a prototypical asset.
|
createAsset | final public Asset createAsset(String classname)(Code) | | Create a raw Asset instance for use by LDM Plugins
which are PrototypeProviders.
The asset created will have *no* propertygroups.
This *always* creates a prototype of the specific class.
most plugins want to call getPrototype(String typeid);
Parameters: classname - One of the defined LDM class names. This mustbe the actual class name without the package path. For example,"Container" is correct, "org.cougaar.planning.ldm.asset.Container" is not. |
createAsset | final public Asset createAsset(Class assetClass)(Code) | | Create a raw Asset instance for use by LDM Plugins
which are PrototypeProviders.
The asset created will have *no* propertygroups.
This *always* creates a prototype of the specific class.
most plugins want to call getPrototype(String typeid);
Parameters: assetClass - an LDM Asset class. |
createInstance | final public Asset createInstance(Asset prototypeAsset)(Code) | | Create an instance of a prototypical asset.
This variation does not add an ItemIdentificationCode
to the constructed asset instance. Without itemIDs,
multiple instances of a prototype will test as .equals(), and
can be confusing if they're added to the logplan.
Most users will find #createInstance(Asset, String) more convenient.
|
createInstance | final public Asset createInstance(String prototypeAssetTypeId)(Code) | | Create an instance of a prototypical asset.
This variation does not add an ItemIdentificationCode
to the constructed asset instance. Without itemIDs,
multiple instances of a prototype will test as .equals(), and
can be confusing if they're added to the logplan.
Most users will find #createInstance(String, String) more convenient.
|
createInstance | final public Asset createInstance(Asset prototypeAsset, String uniqueId)(Code) | | Create an instance of a prototypical asset, specifying an initial
UniqueID for its itemIdentificationPG .
|
createInstance | final public Asset createInstance(String prototypeAssetTypeId, String uniqueId)(Code) | | Create an instance of a prototypical asset, specifying an initial UniqueID
for its itemIdentificationPG.
|
createInstance | public Asset createInstance(String prototypeAssetTypeId, int quantity)(Code) | | Create an aggregate asset instance of a prototypical asset.
|
createPropertyGroup | final public PropertyGroup createPropertyGroup(String propertyName)(Code) | | create a new property group, given a PropertyGroup name.
The name should not have any package prefix and should
be the cannonical name (not the implementation class name).
|
createPropertyGroup | final public PropertyGroup createPropertyGroup(Class propertyClass)(Code) | | create a new property group, given a PropertyGroupGroup name.
The name should not have any package prefix and should
be the cannonical name (not the implementation class name).
|
createPrototype | final public Asset createPrototype(String classname, String typeid)(Code) | | convenience routine for creating prototype assets.
does a createAsset followed by setting the TypeIdentification
to the specified string.
|
createPrototype | final public Asset createPrototype(Class assetclass, String typeid)(Code) | | convenience routine for creating prototype assets.
does a createAsset followed by setting the TypeIdentification
to the specified string.
|
createPrototype | final public Asset createPrototype(String classname, String typeid, String nomen)(Code) | | convenience routine for creating prototype assets.
does a createAsset followed by setting the TypeIdentification
and the nomenclature to the specified string.
|
getPrototype | final public Asset getPrototype(String aTypeName)(Code) | | Find a prototype Asset based on it's typeid description,
(e.g. "NSN/1234567890123") either by looking up an existing
object or by creating one of the appropriate type.
Shorthand for LDMServesPlugin.getPrototype(aTypeName);
|
Methods inherited from org.cougaar.planning.ldm.plan.ClusterObjectFactoryImpl | public Aggregation createAggregation(Plan aPlan, Task aTask, Composition aComposition, AllocationResult estimatedresult)(Code)(Java Doc) public Allocation createAllocation(Plan aPlan, Task aTask, Asset anAsset, AllocationResult estimatedresult, Role aRole)(Code)(Java Doc) public AssetTransfer createAssetTransfer(Plan aPlan, Task aTask, Asset anAsset, Schedule aSchedule, Asset toAsset, AllocationResult estimatedresult, Role aRole)(Code)(Java Doc) public Disposition createDisposition(Plan aPlan, Task aTask, AllocationResult result)(Code)(Java Doc) public Expansion createExpansion(Plan aPlan, Task aTask, Workflow aWorkflow, AllocationResult estimatedresult)(Code)(Java Doc) public Disposition createFailedDisposition(Plan aPlan, Task aTask, AllocationResult failure)(Code)(Java Doc) public TransferableTransfer createTransferableTransfer(Transferable aTransferable, Asset anAsset)(Code)(Java Doc) public MessageAddress getMessageAddress()(Code)(Java Doc) public UID getNextUID()(Code)(Java Doc) public Plan getRealityPlan()(Code)(Java Doc) public Verb getVerb(String v)(Code)(Java Doc) protected Class loadClass(String className) throws ClassNotFoundException(Code)(Java Doc) public AllocationResult newAVAllocationResult(double rating, boolean success, AspectValue[] aspectvalues)(Code)(Java Doc) public AllocationResult newAVPhasedAllocationResult(double rating, boolean success, AspectValue[] rollupavs, Collection phasedresults)(Code)(Java Doc) public NewAlert newAlert()(Code)(Java Doc) public NewAlertParameter newAlertParameter()(Code)(Java Doc) public AllocationResult newAllocationResult(double rating, boolean success, int[] aspecttypes, double[] result)(Code)(Java Doc) public AllocationResult newAllocationResult(double rating, boolean success, AspectValue[] avrs)(Code)(Java Doc) public NewAssetAssignment newAssetAssignment()(Code)(Java Doc) public AssetRescind newAssetRescind(Asset asset, Asset rescindeeAsset, Schedule rescindSchedule)(Code)(Java Doc) public NewAssetVerification newAssetVerification()(Code)(Java Doc) public NewAssetVerification newAssetVerification(Asset asset, Asset assignee, Schedule schedule)(Code)(Java Doc) public NewAssignedAvailabilityElement newAssignedAvailabilityElement()(Code)(Java Doc) public NewAssignedAvailabilityElement newAssignedAvailabilityElement(Asset assignee, long startTime, long endTime)(Code)(Java Doc) public NewSchedule newAssignedAvailabilitySchedule(Enumeration availElements)(Code)(Java Doc) public NewSchedule newAssignedAvailabilitySchedule()(Code)(Java Doc) public NewAssignedRelationshipElement newAssignedRelationshipElement()(Code)(Java Doc) public NewAssignedRelationshipElement newAssignedRelationshipElement(Asset assetA, Role roleA, Asset assetB, long startTime, long endTime)(Code)(Java Doc) public NewAssignedRelationshipElement newAssignedRelationshipElement(Relationship relationship)(Code)(Java Doc) public NewSchedule newAssignedRelationshipSchedule(Enumeration elements)(Code)(Java Doc) public NewSchedule newAssignedRelationshipSchedule()(Code)(Java Doc) public BulkEstimate newBulkEstimate(Task atask, List prefsets, double conf)(Code)(Java Doc) public NewComposition newComposition()(Code)(Java Doc) public NewConstraint newConstraint()(Code)(Java Doc) public NewDeletion newDeletion()(Code)(Java Doc) public NewItineraryElement newItineraryElement()(Code)(Java Doc) public NewSchedule newLocationRangeSchedule(Enumeration locationRangeElements)(Code)(Java Doc) public NewLocationRangeScheduleElement newLocationRangeScheduleElement()(Code)(Java Doc) public NewSchedule newLocationSchedule(Enumeration locationElements)(Code)(Java Doc) public NewLocationScheduleElement newLocationScheduleElement()(Code)(Java Doc) public NewMPTask newMPTask()(Code)(Java Doc) public NewNotification newNotification()(Code)(Java Doc) public AllocationResult newPhasedAllocationResult(double rating, boolean success, int[] aspecttypes, double[] rollup, Enumeration allresults)(Code)(Java Doc) public AllocationResult newPhasedAllocationResult(double rating, boolean success, AspectValue[] avs, Enumeration allresults)(Code)(Java Doc) public AllocationResult newPhasedAllocationResult(double rating, boolean success, AspectValue[] avs, Collection allresults)(Code)(Java Doc) public Policy newPolicy(String policyType)(Code)(Java Doc) public Preference newPreference(int aspecttype, ScoringFunction scorefunction)(Code)(Java Doc) public Preference newPreference(int aspecttype, ScoringFunction scorefunction, double aweight)(Code)(Java Doc) public NewPrepositionalPhrase newPrepositionalPhrase()(Code)(Java Doc) public PrepositionalPhrase newPrepositionalPhrase(String s, Object io)(Code)(Java Doc) public Relationship newRelationship(Role role1, HasRelationships object1, HasRelationships object2, TimeSpan timeSpan)(Code)(Java Doc) public Relationship newRelationship(Role role1, HasRelationships object1, HasRelationships object2, long startTime, long endTime)(Code)(Java Doc) public Relationship newRelationship(AssignedRelationshipElement assignedRelationship, Asset asset1, Asset asset2)(Code)(Java Doc) public NewRelationshipSchedule newRelationshipSchedule(HasRelationships hasRelationships)(Code)(Java Doc) public NewRelationshipSchedule newRelationshipSchedule(HasRelationships hasRelationships, Collection relationships)(Code)(Java Doc) public NewReport newReport()(Code)(Java Doc) public NewSchedule newSchedule(Enumeration scheduleElements)(Code)(Java Doc) public NewScheduleElement newScheduleElement(Date start, Date end)(Code)(Java Doc) public NewSchedule newSimpleSchedule(Date start, Date end)(Code)(Java Doc) public NewSchedule newSimpleSchedule(long startTime, long endTime)(Code)(Java Doc) public NewTask newTask()(Code)(Java Doc) public NewTask newTask(UID uid)(Code)(Java Doc) public TaskRescind newTaskRescind(Task task, MessageAddress destination)(Code)(Java Doc) public TaskRescind newTaskRescind(UID taskUID, MessageAddress destination)(Code)(Java Doc) public TaskRescind newTaskRescind(UID taskUID, MessageAddress destination, boolean deleted)(Code)(Java Doc) public NewTransferableAssignment newTransferableAssignment()(Code)(Java Doc) public NewTransferableRescind newTransferableRescind()(Code)(Java Doc) public NewTransferableTransfer newTransferableTransfer()(Code)(Java Doc) public NewTransferableVerification newTransferableVerification(Transferable t)(Code)(Java Doc) public NewWorkflow newWorkflow()(Code)(Java Doc) public NewTask shadowTask(Task t)(Code)(Java Doc)
|
|
|