|
Copyright © 2000, 2009, Oracle and/or its affiliates. All rights reserved. | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.bea.p13n.model.Model
com.bea.p13n.model.XmlObjectModel
com.bea.p13n.rules.model.ClauseModel
com.bea.p13n.rules.model.MethodCallModel
com.bea.p13n.rules.model.NewInstanceModel
public class NewInstanceModel
A rule clause representing the creation of an object via a java type's constructor. This can only be used as a rule action, in which the resulting object will be added to the rule's context's working memory. A new-instance requires a type-alias, which is the java class which contains the constructor which will be executed. The arguments of a new-instance can be:
| Nested Class Summary | |
|---|---|
static class |
NewInstanceModel.Recognizer
An object which can recognize the structure for this model. |
| Nested classes/interfaces inherited from class com.bea.p13n.rules.model.MethodCallModel |
|---|
MethodCallModel.PropertyRefArgument, MethodCallModel.UnknownArgument, MethodCallModel.VariableArgument |
| Nested classes/interfaces inherited from class com.bea.p13n.model.Model |
|---|
Model.ChangeEvent, Model.ChangeListener, Model.ChangeSupport, Model.Debug |
| Field Summary | |
|---|---|
static String |
CLAUSE_TYPE
The clause type for this. |
| Fields inherited from class com.bea.p13n.rules.model.MethodCallModel |
|---|
LITERAL_NAMESPACE_URI |
| Fields inherited from class com.bea.p13n.rules.model.ClauseModel |
|---|
clauseType |
| Fields inherited from class com.bea.p13n.model.XmlObjectModel |
|---|
copyRootXmlObject, instanceUri, isComplete |
| Fields inherited from class com.bea.p13n.model.Model |
|---|
childrenModels, docModel, parentModel, roChildrenModels |
| Constructor Summary | |
|---|---|
NewInstanceModel()
|
|
| Method Summary | |
|---|---|
void |
clearCachedData()
Clear any cached data. |
org.apache.xmlbeans.XmlObject |
createNewXmlObject(String clauseType)
Create a new, empty root object for the specified clauseType. |
protected boolean |
determineIsComplete()
Override to include a check to make sure the type-alias is valid and the method signature type aliases are valid as well. |
protected com.bea.p13n.expression.schema.MethodArgumentList |
getMethodArgumentListFromXmlObject(boolean create)
Get the MethodArgumentList from the underlying method call XmlObject |
String[] |
getMethodSignature()
Get the fully-qualified java classes which are the signature of the constructor. |
protected String[] |
getMethodSignatureNoCache()
Get the fully-qualified java classes which are the signature of the constructor, without any caching. |
protected com.bea.p13n.expression.schema.NewInstance |
getNewInstance()
|
String |
getTypeAlias()
Get the fully-qualified java class name which will be created. |
protected void |
removeMethodArgumentListFromXmlObject()
Remove the MethodArgumentList from the underlying XmlObject. |
void |
setMethodSignature(String... types)
Set the fully-qualified java classes which are the signature of the constructor. |
void |
setTypeAlias(String typeAlias)
Set the fully-qualified java class name which will be created. |
void |
setXmlObject(String clauseType,
org.apache.xmlbeans.XmlObject clause)
Initialize this clause model with a type and a root object. |
| Methods inherited from class com.bea.p13n.rules.model.MethodCallModel |
|---|
convertArgToXmlObject, convertXmlObjectArg, determineArgumentIsComplete, findPropertySetType, getMethodArguments, getMethodArgumentsNoCache, setMethodArguments, setParent, unsupportedObjectArg, unsupportedXmlObjectArg |
| Methods inherited from class com.bea.p13n.rules.model.ClauseModel |
|---|
addBranch, addLiteral, addMethod, addMethodOrOperator, addOperator, addVariable, addVariableBinding, copy, getClauseType, getContainingRuleModel, getCopyXmlObject, initializeNew, isInActions, isInConditions, isValidTypeAlias, isValidVariableName, makeSafeCopy, toString |
| Methods inherited from class com.bea.p13n.model.XmlObjectModel |
|---|
checkElement, childAdded, childRemoved, fixQName, getApplicationInstanceUri, getChild, getDocument, getLocalName, getParent, getQName, getRootXmlObject, isComplete, isNil, preRemove, propertyChanged, removeAllChildren, removeChild, setApplicationInstanceUri, setIsComplete, setIsComplete, setRootXmlObject |
| Methods inherited from class com.bea.p13n.model.Model |
|---|
addChangeListener, addChild, addChild, clone, doubleEquals, equals, getChildren, getDebug, getDebug, getDocument, getParent, longEquals, removeChangeListener, removeChild, removeChild, removeEmpties, setDocument |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final String CLAUSE_TYPE
| Constructor Detail |
|---|
public NewInstanceModel()
| Method Detail |
|---|
public org.apache.xmlbeans.XmlObject createNewXmlObject(String clauseType)
throws IllegalArgumentException
ClauseModelSubclasses need to implement this to create an appropriately typed
and filled root XmlObject which represents the ClauseModel. The return
value from this needs to be accepted from ClauseModel.setXmlObject(java.lang.String, org.apache.xmlbeans.XmlObject) for the
specified clauseType.
createNewXmlObject in class ClauseModelclauseType - the clause type of the clause.
IllegalArgumentException - thrown on an unsupproted clauseType.
public void setXmlObject(String clauseType,
org.apache.xmlbeans.XmlObject clause)
throws IllegalArgumentException
ClauseModelThis will fire ChangeEvents
for clauseType and rootXmlObject.
Subclasses should override to call super.setXmlObject() and do any type checking and verification.
It is not expected that ClauseModel's are valid after an call to this method which throws an exception, although the caller could recall this method with valid data.
setXmlObject in class ClauseModelclauseType - the clause type of the clause.clause - the root xml object of the clause.
IllegalArgumentException - thrown if the clause is not valid for
the ClauseModel or clauseType.protected boolean determineIsComplete()
determineIsComplete in class MethodCallModelClauseModel.isValidTypeAlias(String)public void clearCachedData()
MethodCallModel
clearCachedData in class MethodCallModelprotected com.bea.p13n.expression.schema.NewInstance getNewInstance()
protected com.bea.p13n.expression.schema.MethodArgumentList getMethodArgumentListFromXmlObject(boolean create)
MethodCallModel
getMethodArgumentListFromXmlObject in class MethodCallModelcreate - true to create if not currently set, false to return null
if currently set.
protected void removeMethodArgumentListFromXmlObject()
MethodCallModel
removeMethodArgumentListFromXmlObject in class MethodCallModelpublic String getTypeAlias()
public void setTypeAlias(String typeAlias)
public String[] getMethodSignature()
protected String[] getMethodSignatureNoCache()
public void setMethodSignature(String... types)
|
Copyright © 2000, 2009, Oracle and/or its affiliates. All rights reserved. | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||