arlut.csd.ganymede
Class objectEventCustom
java.lang.Object
|
+--arlut.csd.ganymede.DBObject
|
+--arlut.csd.ganymede.DBEditObject
|
+--arlut.csd.ganymede.objectEventCustom
- All Implemented Interfaces:
- db_object, FieldType, ObjectStatus, java.rmi.Remote, SchemaConstants
- public class objectEventCustom
- extends DBEditObject
- implements SchemaConstants
|
Field Summary |
(package private) static QueryResult |
eventNames
We're going to present the user with a list of recommended event
names to choose from. |
(package private) QueryResult |
objectTypeList
Since object types can only be changed by the schema editor, we'll
cache the object type list for the duration of this object's being
edited. |
| Fields inherited from class arlut.csd.ganymede.DBEditObject |
ADDELEMENT, ADDELEMENTS, committing, debug, DELELEMENT, DELELEMENTS, deleting, editset, FIRSTOP, LASTOP, maxDate, minDate, original, SETELEMENT, SETPASSCRYPT, SETPASSMD5, SETPASSPLAIN, SETPASSWINHASHES, SETVAL, status, stored |
| Fields inherited from interface arlut.csd.ganymede.SchemaConstants |
BackLinksField, ContainerField, CreationDateField, CreatorField, EventBase, EventDescription, EventExternalMail, EventMailBoolean, EventMailOwners, EventMailToSelf, EventName, EventToken, ExpirationField, FinalBase, FinalSystemField, ModificationDateField, ModifierField, NotesField, ObjectEventBase, ObjectEventDescription, ObjectEventExternalMail, ObjectEventMailOwners, ObjectEventMailToSelf, ObjectEventName, ObjectEventObjectName, ObjectEventObjectType, ObjectEventToken, OwnerBase, OwnerCcAdmins, OwnerExternalMail, OwnerListField, OwnerMembersField, OwnerNameField, OwnerObjectsOwned, OwnerSupergash, PersonaAdminConsole, PersonaAdminPower, PersonaAssocUser, PersonaBase, PersonaGroupsField, PersonaLabelField, PersonaMailAddr, PersonaMonitorObj, PersonaNameField, PersonaPasswordField, PersonaPrivs, PersonaSupergashObj, RemovalField, RoleBase, RoleDefaultMatrix, RoleDefaultObj, RoleDelegatable, RoleMatrix, RoleName, RolePersonae, TaskBase, TaskClass, TaskName, TaskOptionStrings, TaskPeriodAnchor, TaskPeriodCount, TaskPeriodUnit, TaskRunOnCommit, TaskRunPeriodically, UserAdminPersonae, UserBase, UserPassword, UserUserName |
| Fields inherited from interface arlut.csd.ganymede.FieldType |
BOOLEAN, DATE, FIRSTFIELD, FLOAT, INVID, IP, LASTFIELD, NUMERIC, PASSWORD, PERMISSIONMATRIX, STRING |
|
Method Summary |
boolean |
canSeeField(DBSession session,
DBField field)
Customization method to verify whether the user should be able to
see a specific field in a given object. |
boolean |
fieldRequired(DBObject object,
short fieldid)
Customization method to control whether a specified field
is required to be defined at commit time for a given object.
To be overridden in DBEditObject subclasses. |
ReturnVal |
finalizeSetValue(DBField field,
java.lang.Object value)
This method allows the DBEditObject to have executive approval
of any scalar set operation, and to take any special actions
in reaction to the set.. |
java.lang.String |
getLabelHook(DBObject object)
Hook to allow intelligent generation of labels for DBObjects
of this type. |
boolean |
mustChoose(DBField field)
This method provides a hook that a DBEditObject subclass
can use to indicate whether a given field can only
choose from a choice provided by obtainChoiceList() |
QueryResult |
obtainChoiceList(DBField field)
This method provides a hook that can be used to generate
choice lists for invid and string fields that provide
such. |
| Methods inherited from class arlut.csd.ganymede.DBEditObject |
anonymousLinkOK, anonymousLinkOK, anonymousLinkOK, anonymousUnlinkOK, anonymousUnlinkOK, anonymousUnlinkOK, attemptBackLinkClear, canBeInactivated, canClone, canCloneField, canCreate, canInactivate, canRead, canRemove, canWrite, checkNewField, checkpoint, choiceListHasExceptions, clearBackLink, cloneFromObject, commitPhase1, commitPhase2, consistencyCheck, createNewEmbeddedObject, diff, excludeSelected, finalizeAddElement, finalizeAddElements, finalizeDeleteElement, finalizeDeleteElements, finalizeInactivate, finalizeReactivate, finalizeRemove, finalizeSetElement, getEditSet, getEmailTargets, getLabel, getOriginal, getSession, getStatus, getVirtualValue, grantOwnership, hasEmailTarget, inactivate, initializeNewObject, instantiateNewField, internalSession, isCommitting, isDateLimited, isDeleting, isFloatLimited, isIntLimited, isIPv6OK, isStored, maxDate, maxFloat, maxInt, minDate, minFloat, minInt, obtainChoicesKey, permExpand, permExpand, permOverride, permOverride, reactivate, release, remove, rollback, setDebug, setFieldValue, setFieldValueLocal, setStatus, verifyNewValue, virtualizeField, wizardHook |
| Methods inherited from class arlut.csd.ganymede.DBObject |
appendObjectInfo, canInactivate, checkRequiredFields, clearField, clearFieldPerm, clearShadow, createShadow, emit, emitXML, equals, exportFields, findField, getASymmetricTargets, getBackLinks, getBase, getContainingLabel, getEmailTargets, getExpirationDate, getField, getField, getFieldDef, getFieldId, getFieldInfoVector, getFieldName, getFieldPerm, getFieldValue, getFieldValueLocal, getFieldValues, getFieldValuesLocal, getFieldVect, getFieldVector, getGSession, getID, getInvid, getLabelField, getLabelFieldID, getPrintString, getRemovalDate, getSummaryDescription, getTypeDesc, getTypeID, getTypeName, hasEmailTarget, hashCode, isEmbedded, isInactivated, isSet, isValid, listFields, lookupLabel, print, print, receive, replaceField, retrieveField, saveField, setBackPointers, toString, unsetBackPointers, updateBaseRefs, willBeRemoved, willExpire |
| Methods inherited from class java.lang.Object |
, clone, finalize, getClass, notify, notifyAll, registerNatives, wait, wait, wait |
eventNames
static QueryResult eventNames
- We're going to present the user with a list of recommended event
names to choose from.
objectTypeList
QueryResult objectTypeList
- Since object types can only be changed by the schema editor, we'll
cache the object type list for the duration of this object's being
edited. We could even make this a static, but then we'd have to
have the DBSchemaEdit code know to clear it when the schema was
edited, which would be a hassle.
objectEventCustom
public objectEventCustom(DBObjectBase objectBase)
throws java.rmi.RemoteException
- Customization Constructor
objectEventCustom
public objectEventCustom(DBObjectBase objectBase,
Invid invid,
DBEditSet editset)
throws java.rmi.RemoteException
- Create new object constructor
objectEventCustom
public objectEventCustom(DBObject original,
DBEditSet editset)
throws java.rmi.RemoteException
- Check-out constructor, used by DBObject.createShadow()
to pull out an object for editing.
fieldRequired
public boolean fieldRequired(DBObject object,
short fieldid)
- Customization method to control whether a specified field
is required to be defined at commit time for a given object.
To be overridden in DBEditObject subclasses.
- Overrides:
fieldRequired in class DBEditObject
mustChoose
public boolean mustChoose(DBField field)
- This method provides a hook that a DBEditObject subclass
can use to indicate whether a given field can only
choose from a choice provided by obtainChoiceList()
- Overrides:
mustChoose in class DBEditObject
getLabelHook
public java.lang.String getLabelHook(DBObject object)
- Hook to allow intelligent generation of labels for DBObjects
of this type. Subclasses of DBEditObject should override
this method to provide for custom generation of the
object's label type
- Overrides:
getLabelHook in class DBEditObject
obtainChoiceList
public QueryResult obtainChoiceList(DBField field)
- This method provides a hook that can be used to generate
choice lists for invid and string fields that provide
such. String and Invid DBFields will call their owner's
obtainChoiceList() method to get a list of valid choices.
This method will provide a reasonable default for targetted
invid fields.
- Overrides:
obtainChoiceList in class DBEditObject
finalizeSetValue
public ReturnVal finalizeSetValue(DBField field,
java.lang.Object value)
- This method allows the DBEditObject to have executive approval
of any scalar set operation, and to take any special actions
in reaction to the set.. if this method returns true, the
DBField that called us will proceed to make the change to
it's value. If this method returns false, the DBField
that called us will not make the change, and the field
will be left unchanged.
The DBField that called us will take care of all possible checks
on the operation (including a call to our own verifyNewValue()
method. Under normal circumstances, we won't need to do anything
here.
If we do return false, we should set editset.setLastError to
provide feedback to the client about what we disapproved of.
- Overrides:
finalizeSetValue in class DBEditObject
canSeeField
public boolean canSeeField(DBSession session,
DBField field)
- Customization method to verify whether the user should be able to
see a specific field in a given object. Instances of DBField will
wind up calling up to here to let us override the normal visibility
process.
Note that it is permissible for session to be null, in which case
this method will always return the default visiblity for the field
in question.
If field is not from an object of the same base as this DBEditObject,
an exception will be thrown.
To be overridden in DBEditObject subclasses.
- Overrides:
canSeeField in class DBEditObject