wt.epm.build
Class EPMDefaultBuildIBADelegate

java.lang.Object
  extended bywt.epm.build.EPMDefaultBuildIBADelegate
All Implemented Interfaces:
EPMBuildIBADelegate, Externalizable, Serializable

public class EPMDefaultBuildIBADelegate
extends Object
implements EPMBuildIBADelegate, Externalizable

Decides what attribute values from the build source to publish to the build target based upon the teamtemplate of the build target.

To determine what attributes to publish for a given team template, the delegate reads a property defined in the wt.properties file. Each team template may define its own property. A default property applies to all team templates not defining a property of their own. This default setting will be used for objects using lite lifecycle templates which do not have teamtemplates, as well as those objects using a team template which is not specifically specified.

Form for the Default: wt.epm.build.attributes.default=delimiter separated list of attributes to publish

Form for a Specific Team Template: wt.epm.build.attributes.teamTemplate.container path.team template name=delimiter separated list of attributes to publish

The container path is excluded if it is the classic container. Container path separators of commas are replaced in the properties by periods. Spaces following commas are removed. Spaces within containers are changed to underscores. For example, given a container path of Site, Organization Design, Library Stock parts convert this to Site.Organization_Design.Library_Stock_parts to get the appropriate property name (e.g. wt.epm.build.attributes.teamtemplate.Site.Organization_Design,Library_Stock_parts.teamtemplate name) in properties file. * means publish all attributes. The property "wt.epm.build.attributes.delimiter" defines the delimiter that separates the attributes on the list.

Supported API: false

Extendable: false

See Also:
Serialized Form

Nested Class Summary
protected static class EPMDefaultBuildIBADelegate.Filter
           
 
Field Summary
private static String ALL_ATTRIBUTES
           
private static String ATTRIBUTE_DELIMITER_PROPERTY
           
private static String CLASSNAME
           
private static String COMMA
           
private static String CONTAINER_PATH_DELIMETERS
           
private static char CONTAINER_PATH_SEPERATOR
           
private static char CONTAINER_SPACE_REPLACEMENT
           
private static String DEFAULT_TEAM_PROPERTY
           
static long EXTERNALIZATION_VERSION_UID
           
private static char HIERARCHY_NAME_DELIMITER
           
protected static long OLD_FORMAT_VERSION_UID
           
private static String RESOURCE
           
(package private) static long serialVersionUID
           
private static String SPACE
           
private static String TEAM_PROPERTY_PREFIX
           
 
Constructor Summary
EPMDefaultBuildIBADelegate()
           
 
Method Summary
 QueryResult getDataToPublish(IBAHolder source, IBAHolder target)
          For a given a build source and target, returns a query result that contains the attribute values to publish to the build target.
 QueryResult getDataToPublishOnMaster(IBAHolder[] sources, IBAHolder target)
          For a given target master and build sources masters , returns a query result that contains the attribute values to publish to the build target master.
 void readExternal(ObjectInput input)
          Reads the non-transient fields of this class from an external source.
private  boolean readOldVersion(ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source, which is not the current version.
protected  boolean readVersion(EPMDefaultBuildIBADelegate thisObject, ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source.
 boolean updateModelAttributes(EPMDocument source, WTPart target)
          Populates modeled attribute on target from IBA in the given source.
 void writeExternal(ObjectOutput output)
          Writes the non-transient fields of this class to an external source.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RESOURCE

private static final String RESOURCE
See Also:
Constant Field Values

CLASSNAME

private static final String CLASSNAME

serialVersionUID

static final long serialVersionUID
See Also:
Constant Field Values

EXTERNALIZATION_VERSION_UID

public static final long EXTERNALIZATION_VERSION_UID
See Also:
Constant Field Values

OLD_FORMAT_VERSION_UID

protected static final long OLD_FORMAT_VERSION_UID
See Also:
Constant Field Values

CONTAINER_PATH_SEPERATOR

private static final char CONTAINER_PATH_SEPERATOR
See Also:
Constant Field Values

CONTAINER_PATH_DELIMETERS

private static final String CONTAINER_PATH_DELIMETERS
See Also:
Constant Field Values

CONTAINER_SPACE_REPLACEMENT

private static final char CONTAINER_SPACE_REPLACEMENT
See Also:
Constant Field Values

SPACE

private static final String SPACE
See Also:
Constant Field Values

COMMA

private static final String COMMA
See Also:
Constant Field Values

HIERARCHY_NAME_DELIMITER

private static final char HIERARCHY_NAME_DELIMITER
See Also:
Constant Field Values

ALL_ATTRIBUTES

private static final String ALL_ATTRIBUTES
See Also:
Constant Field Values

ATTRIBUTE_DELIMITER_PROPERTY

private static final String ATTRIBUTE_DELIMITER_PROPERTY
See Also:
Constant Field Values

TEAM_PROPERTY_PREFIX

private static final String TEAM_PROPERTY_PREFIX
See Also:
Constant Field Values

DEFAULT_TEAM_PROPERTY

private static final String DEFAULT_TEAM_PROPERTY
See Also:
Constant Field Values
Constructor Detail

EPMDefaultBuildIBADelegate

public EPMDefaultBuildIBADelegate()
Method Detail

writeExternal

public void writeExternal(ObjectOutput output)
                   throws IOException
Writes the non-transient fields of this class to an external source.

Supported API: false

Specified by:
writeExternal in interface Externalizable
Parameters:
output -
Throws:
IOException

readExternal

public void readExternal(ObjectInput input)
                  throws IOException,
                         ClassNotFoundException
Reads the non-transient fields of this class from an external source.

Supported API: false

Specified by:
readExternal in interface Externalizable
Parameters:
input -
Throws:
IOException
ClassNotFoundException

readVersion

protected boolean readVersion(EPMDefaultBuildIBADelegate thisObject,
                              ObjectInput input,
                              long readSerialVersionUID,
                              boolean passThrough,
                              boolean superDone)
                       throws IOException,
                              ClassNotFoundException
Reads the non-transient fields of this class from an external source.

Supported API: false

Parameters:
thisObject -
input -
readSerialVersionUID -
passThrough -
superDone -
Returns:
boolean
Throws:
IOException
ClassNotFoundException

readOldVersion

private boolean readOldVersion(ObjectInput input,
                               long readSerialVersionUID,
                               boolean passThrough,
                               boolean superDone)
                        throws IOException,
                               ClassNotFoundException
Reads the non-transient fields of this class from an external source, which is not the current version.

Parameters:
input -
readSerialVersionUID -
passThrough -
superDone -
Returns:
boolean
Throws:
IOException
ClassNotFoundException

getDataToPublish

public QueryResult getDataToPublish(IBAHolder source,
                                    IBAHolder target)
                             throws WTException
For a given a build source and target, returns a query result that contains the attribute values to publish to the build target.

Supported API: false

Specified by:
getDataToPublish in interface EPMBuildIBADelegate
Parameters:
source -
target -
Returns:
QueryResult
Throws:
WTException

getDataToPublishOnMaster

public QueryResult getDataToPublishOnMaster(IBAHolder[] sources,
                                            IBAHolder target)
                                     throws WTException
For a given target master and build sources masters , returns a query result that contains the attribute values to publish to the build target master.

Supported API: false

Specified by:
getDataToPublishOnMaster in interface EPMBuildIBADelegate
Parameters:
sources -
target -
Returns:
QueryResult
Throws:
WTException

updateModelAttributes

public boolean updateModelAttributes(EPMDocument source,
                                     WTPart target)
                              throws WTException
Populates modeled attribute on target from IBA in the given source. Returns true or false depending upon whether or not the method actually changed any of the model attributes on the target.

Supported API: false

Specified by:
updateModelAttributes in interface EPMBuildIBADelegate
Parameters:
source -
target -
Returns:
boolean
Throws:
WTException