wt.epm.util
Class EPMApplicationVeto

java.lang.Object
  extended bywt.epm.util.EPMApplicationVeto
All Implemented Interfaces:
Externalizable, NetFactor, Serializable

public class EPMApplicationVeto
extends Object
implements NetFactor, Externalizable

Each vetoable operation has a property in the wt.properties file that lists the applications that wish to veto that operation. The veto applies to all EPM objects that an application has created. Based upon values for these properties, this class decides whether or not to allow the current application to perform a given operation on a given epm object.

. The form for these properties are wt.epm.veto.= Example: wt.epm.veto.delimiter=, wt.epm.veto.checkin=PROE,PRODUCTVIEW

Use the newEPMApplicationVeto static factory method(s), not the EPMApplicationVeto constructor, to construct instances of this class. Instances must be constructed using the static factory(s), in order to ensure proper initialization of the instance.



Supported API: true

Extendable: false

See Also:
Serialized Form

Field Summary
static String ADD_IBA
           
static String ADD_LINK
           
static String CHANGE_FOLDER
           
static String CHECKIN
           
static String CHECKOUT
           
private static String CLASSNAME
           
static String DELETE
           
static String DELETE_IBA
           
static String DELETE_LINK
           
protected static String DELIMITER
           
static String DISABLE_PROHIBIT_MODIFY_VETO
          Set a boolean true with this key in the method context to disable PRE_CHANGE vetoing on EPM objects.
private static String EPMRESOURCE
           
static long EXTERNALIZATION_VERSION_UID
           
static String MODIFY_IBA
           
static String MODIFY_PROPERTY
           
protected static long OLD_FORMAT_VERSION_UID
           
protected static String PREFIX
           
private static String RESOURCE
           
static String REVISE
           
(package private) static long serialVersionUID
           
private  Dictionary vetoingApplications
           
 
Constructor Summary
EPMApplicationVeto()
           
 
Method Summary
private  void createOperationEntry(String operation)
           
 ClassInfo getClassInfo()
          Returns the ClassInfo object for this class.
 String getConceptualClassname()
          Deprecated.  
protected  void initialize()
          Supports initialization, following construction of an instance.
 boolean isVetoOperation(EPMObject object, String operation)
          Returns true if the application that owns the given epm object does not allow other applications to perform the given operation on its epm objects.
static EPMApplicationVeto newEPMApplicationVeto()
          Default factory for the class.
 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(EPMApplicationVeto thisObject, ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source.
 String toString()
          Returns the conceptual (modeled) name for the class.
 void vetoOperation(EPMObject object, String operation)
          Throws an exception if the application that owns the given epm object does not allow other applications to perform the given operation on its epm objects.
 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, wait, wait, wait
 

Field Detail

RESOURCE

private static final String RESOURCE
See Also:
Constant Field Values

CLASSNAME

private static final String CLASSNAME

vetoingApplications

private Dictionary vetoingApplications

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

EPMRESOURCE

private static final String EPMRESOURCE
See Also:
Constant Field Values

DISABLE_PROHIBIT_MODIFY_VETO

public static final String DISABLE_PROHIBIT_MODIFY_VETO
Set a boolean true with this key in the method context to disable PRE_CHANGE vetoing on EPM objects. This is needed by an R7 migrator to relax the constraint which updating EPM managed objects identifies. TO BE USED ONLY BY MIGRATOR

Example Usage

   MethodContext.getContext().put(DISABLE_PROHIBIT_MODIFY_VETO, "true");
   try {
       ...
   } finally {
      MethodContext.getContext().remove(DISABLE_PROHIBIT_MODIFY_VETO);
   }


Supported API: false

See Also:
Constant Field Values

ADD_IBA

public static final String ADD_IBA
See Also:
Constant Field Values

ADD_LINK

public static final String ADD_LINK
See Also:
Constant Field Values

CHECKIN

public static final String CHECKIN
See Also:
Constant Field Values

CHECKOUT

public static final String CHECKOUT
See Also:
Constant Field Values

DELETE

public static final String DELETE
See Also:
Constant Field Values

DELETE_IBA

public static final String DELETE_IBA
See Also:
Constant Field Values

DELETE_LINK

public static final String DELETE_LINK
See Also:
Constant Field Values

MODIFY_IBA

public static final String MODIFY_IBA
See Also:
Constant Field Values

MODIFY_PROPERTY

public static final String MODIFY_PROPERTY
See Also:
Constant Field Values

CHANGE_FOLDER

public static final String CHANGE_FOLDER
See Also:
Constant Field Values

REVISE

public static final String REVISE
See Also:
Constant Field Values

PREFIX

protected static final String PREFIX
See Also:
Constant Field Values

DELIMITER

protected static final String DELIMITER
See Also:
Constant Field Values
Constructor Detail

EPMApplicationVeto

public EPMApplicationVeto()
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(EPMApplicationVeto 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

getConceptualClassname

public String getConceptualClassname()
Deprecated.  

Returns the conceptual (modeled) name for the class.

Supported API: false

Specified by:
getConceptualClassname in interface NetFactor
Returns:
String

toString

public String toString()
Returns the conceptual (modeled) name for the class.

Supported API: false

Returns:
String

getClassInfo

public ClassInfo getClassInfo()
                       throws WTIntrospectionException
Returns the ClassInfo object for this class.

Supported API: false

Specified by:
getClassInfo in interface NetFactor
Returns:
ClassInfo
Throws:
WTIntrospectionException

isVetoOperation

public boolean isVetoOperation(EPMObject object,
                               String operation)
                        throws WTException
Returns true if the application that owns the given epm object does not allow other applications to perform the given operation on its epm objects.

Supported API: true

Parameters:
object - EPM object that the given vetoable operation will be performed on
operation - Vetoable operation that will be performed on the given EPM object
Returns:
boolean
Throws:
WTException

vetoOperation

public void vetoOperation(EPMObject object,
                          String operation)
                   throws WTException
Throws an exception if the application that owns the given epm object does not allow other applications to perform the given operation on its epm objects.

Supported API: true

Parameters:
object - EPM Object that the given operation will be performed on
operation - Operation that will be performed on the given EPM object
Throws:
WTException

newEPMApplicationVeto

public static EPMApplicationVeto newEPMApplicationVeto()
                                                throws WTException
Default factory for the class.

Supported API: false

Returns:
EPMApplicationVeto
Throws:
WTException

initialize

protected void initialize()
                   throws WTException
Supports initialization, following construction of an instance. Invoked by "new" factory having the same signature.

Supported API: false

Throws:
WTException

createOperationEntry

private void createOperationEntry(String operation)
                           throws WTException
Throws:
WTException