Expresso 5-6

com.jcorporate.expresso.services.dbobj
Class GroupMembers

java.lang.Object
  extended bycom.jcorporate.expresso.core.dataobjects.BaseDataObject
      extended bycom.jcorporate.expresso.core.dataobjects.jdbc.JDBCDataObject
          extended bycom.jcorporate.expresso.core.dbobj.DBObject
              extended bycom.jcorporate.expresso.core.dbobj.SecuredDBObject
                  extended bycom.jcorporate.expresso.services.dbobj.SecurityDBObject
                      extended bycom.jcorporate.expresso.services.dbobj.GroupMembers
All Implemented Interfaces:
Cacheable, ContextNested, DataObject, LookupInterface, Securable, Serializable, UserListener

public class GroupMembers
extends SecurityDBObject
implements UserListener

Group Member definitions table. IMPORTANT: Use getGroups() from the User object to determine which groups a certain user belongs to, as the implementation may or may not use this table - LDAP may be used instead, for example, or an external application

Since:
Expresso 1.0
Author:
Michael Nash
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class com.jcorporate.expresso.core.dbobj.DBObject
DBObject.FieldError, DBObject.FieldUpdate
 
Field Summary
static String EXPIRES
           
static String EXPUID
           
static String GROUP_NAME
           
static String TABLE
           
 
Fields inherited from class com.jcorporate.expresso.services.dbobj.SecurityDBObject
SECURITY_CONTEXT, SECURITY_OBJECTS
 
Fields inherited from class com.jcorporate.expresso.core.dbobj.SecuredDBObject
ADD, ALL_FUNCTIONS, CACHE_NAME, CACHE_TTY, DELETE, SEARCH, SYSTEM_ACCOUNT, SYSTEM_ACCOUNT_NAME, UPDATE
 
Fields inherited from class com.jcorporate.expresso.core.dbobj.DBObject
ATTRIBUTE_ERROR, ATTRIBUTE_ERROR_MESSAGE, ATTRIBUTE_PAGE_LIMIT, BIG_DECIMAL_ZERO, EMAIL_MASK, EVENT_ADD, EVENT_DELETE, EVENT_UPDATE, FLOAT_MASK, INT_MASK, IS_CHECK_RELATIONAL_INTEGRITY, UPDATE_CHANGED_ONLY, WHERE_KEYWORD
 
Fields inherited from class com.jcorporate.expresso.core.dataobjects.jdbc.JDBCDataObject
anyFieldsDistinct, anyFieldsToRetrieve, appendCustomWhere, caseSensitiveQuery, customWhereClause, dbKey, distinctFields, localConnection, LONGBINARY_READ_DEFAULT_SIZE, maxRecords, myClassName, myUpdates, offsetRecord, recordSet, retrieveFields, sMetadataMap, sortKeys
 
Fields inherited from class com.jcorporate.expresso.core.dataobjects.BaseDataObject
currentStatus, globalMask
 
Fields inherited from interface com.jcorporate.expresso.core.dataobjects.DataObject
STATUS_CURRENT, STATUS_DELETED, STATUS_NEW, STATUS_UPDATED
 
Constructor Summary
GroupMembers()
           
GroupMembers(ControllerRequest request)
          For using DBObjects within Controllers.
GroupMembers(DBConnection localConnection)
          constructor for db transactions
GroupMembers(int uid)
          Initializes object with permissions given by user id.
 
Method Summary
 void add()
          Extend add to handle nested groups
 void addedUser(User user)
          This method is called just after a new user is added Creation date: (5/12/2001 2:26:17 PM)
protected  void checkAllRefs()
          Extends the checkAllRefs method to check for valid UserGroup
 void deletedUser(User user)
          Called when a User is deleted from the system.
 String getField(String fieldName)
          Extend the normal getField method
 boolean hasExpired()
          Checks to see if the current date is past the expiration date.
 void loggedOffUser(User user)
          This method is called just before a user is logged off Creation date: (5/12/2001 2:26:17 PM)
 void loggedOnUser(User user)
          This method is called just after a user is logged on Creation date: (5/12/2001 2:26:17 PM)
 void modifiedUser(User user)
          This method is called just after a user is modified Creation date: (5/12/2001 2:26:17 PM)
 void setGroupName(String grpname)
          set group name; convenience method
 void setUID(int uid)
          set uid; convenience method
protected  void setupFields()
          Set up the fields/tables for this object
 
Methods inherited from class com.jcorporate.expresso.services.dbobj.SecurityDBObject
overrideDataContext, setDataContext, setDBName
 
Methods inherited from class com.jcorporate.expresso.core.dbobj.SecuredDBObject
canRequesterAdd, canRequesterDelete, canRequesterRead, canRequesterUpdate, checkAllowed, copyAttributes, count, createSecurityCache, delete, deleteAll, find, getRequestingUid, getString, getString, getString, getString, getString, getString, getSystemUid, instantiate, isAllowed, retrieve, search, searchAndRetrieveList, searchAndRetrieveList, setRequestingUid, update
 
Methods inherited from class com.jcorporate.expresso.core.dbobj.DBObject
addDetail, addField, addField, addFieldError, addFoundKeys, addIfNeeded, addIndex, addKey, addOrUpdate, addSortKey, addTransition, addVirtualField, addVirtualField, addVirtualField, addVirtualField, average, basicAdd, cacheIsChangedComparison, checkAllReferredToBy, checkAllRefsPublic, checkDeleteDetailPerm, checkField, checkRef, checkRef, clear, clearDistinctFields, clearError, clearFieldsToRetrieve, clearSortKeys, containsWildCards, delete, deleteAll, deleteDetails, denotesRange, equals, forKey, formatDateTime, get, getAllAttributes, getAttribute, getAttributesIterator, getBooleanFieldValue, getCacheSize, getCacheStatsMap, getCacheUtil, getCheckZeroUpdate, getCustomWhereClause, getDataContext, getDataField, getDataTransferObject, getDBName, getDetails, getDistinctFieldCount, getDistinctFields, getFieldBigDecimal, getFieldBoolean, getFieldByte, getFieldByteArray, getFieldData, getFieldDate, getFieldDecimalFormatted, getFieldDouble, getFieldErrorMessage, getFieldFloat, getFieldInt, getFieldLong, getFieldMetaData, getFieldShort, getFieldsToRetrieveCount, getFilterClass, getFoundCount, getFoundKeysArray, getIndexArray, getISOValuesDefault, getISOValuesDefault, getISOValuesDefault, getKey, getKeyFieldListIterator, getLength, getLengthInt, getLocalConnection, getLocale, getLogger, getLookupObject, getMax, getMax, getMaxRecords, getMyKeys, getMyUpdatesArray, getOffsetRecord, getPatternMatcher, getPrecision, getSerializedForm, getStringFilter, getThisDBbj, getThisDBObj, getValidValueDescrip, getValidValues, getValidValuesList, getValues, getValuesDefault, getValuesDefault, getValuesDefault, hasError, hasErrors, haveAllKeys, initialize, isCached, isChanged, isDistinct, isEmpty, isFieldDistinct, isFieldNull, isFieldsToRetrieve, isFieldToRetrieve, isMultiValued, isReadOnly, isSecret, isVirtual, loadFromConnection, logChange, max, min, newInstance, noNewLine, noQuotes, notifyListeners, populateDefaultValues, referredToBy, removeAttribute, removeFromCache, retrieveFromCache, saveBinaryField, search, set, setAttribute, setCacheSize, setCharset, setCheckZeroUpdate, setConnection, setConnection, setCustomWhereClause, setCustomWhereClause, setDataField, setDataTransferObject, setDefaultValue, setDescription, setField, setField, setField, setField, setField, setField, setField, setField, setField, setField, setFieldData, setFieldData, setFieldDistinct, setFieldsToRetrieve, setFilterClass, setFilterClass, setKeys, setLocale, setLookupField, setLookupObject, setMask, setMaxRecords, setMultiValued, setName, setOffsetRecord, setReadOnly, setSchema, setSecret, setSortKey, setStringFilter, setStringFiltersOnAll, setTargetDbSchema, setTargetTable, sqlAggrFunction, sum, toDebugString, update, updateAll, updateAll, verify
 
Methods inherited from class com.jcorporate.expresso.core.dataobjects.jdbc.JDBCDataObject
addInParam, addOutParam, buildWhereClause, buildWhereClauseBuffer, checkZeroUpdate, constructNewMetaData, createAndExecuteSearch, createAndRunStoreProcedure, getConnectionPool, getCustomStringFieldValue, getDef, getDistinctFieldArrayList, getExecutor, getFieldsToRetrieveIterator, getJDBCMetaData, getJDBCUtil, getMappedDataContext, getMetaData, getQueryInterface, getSerialForm, loadFromConnection, makeLimitationStub, quoteIfNeeded, runStoredProcedure, runStoredProcedureAndRetrieveList, selectFieldString, setCaseSensitiveQuery, setDBConnectionPool, setMappedDataContext, setOriginalDBName, setTargetStoreProcedure
 
Methods inherited from class com.jcorporate.expresso.core.dataobjects.BaseDataObject
getGlobalMask, getStatus, isGlobalMasked, setFieldsWithDefaults, setGlobalMask, setStatus
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

GROUP_NAME

public static final String GROUP_NAME
See Also:
Constant Field Values

EXPIRES

public static final String EXPIRES
See Also:
Constant Field Values

EXPUID

public static final String EXPUID
See Also:
Constant Field Values

TABLE

public static final String TABLE
See Also:
Constant Field Values
Constructor Detail

GroupMembers

public GroupMembers()
             throws DBException
See Also:
SecuredDBObject

GroupMembers

public GroupMembers(int uid)
             throws DBException
Initializes object with permissions given by user id.

Parameters:
uid - The Owner's uid

GroupMembers

public GroupMembers(ControllerRequest request)
             throws DBException
For using DBObjects within Controllers. Initializes based upon the current user and the requested db. [Of course this can be modified later]

Parameters:
request - - The controller request handed to you by the framework.

GroupMembers

public GroupMembers(DBConnection localConnection)
             throws DBException
constructor for db transactions

Parameters:
localConnection - the DB connection which should be used, typically because of an ongoing transaction
Method Detail

add

public void add()
         throws DBException
Extend add to handle nested groups

Specified by:
add in interface DataObject
Overrides:
add in class SecuredDBObject
Throws:
DBException - If the user is not permitted to add or if the add fails

addedUser

public void addedUser(User user)
               throws DBException
Description copied from interface: UserListener
This method is called just after a new user is added Creation date: (5/12/2001 2:26:17 PM)

Specified by:
addedUser in interface UserListener
Parameters:
user - com.jcorporate.expresso.core.security.User
Throws:
DBException

checkAllRefs

protected void checkAllRefs()
                     throws DBException
Extends the checkAllRefs method to check for valid UserGroup

Overrides:
checkAllRefs in class DBObject
Throws:
DBException - If a referential integrity violation is found

deletedUser

public void deletedUser(User user)
                 throws DBException
Called when a User is deleted from the system.

Specified by:
deletedUser in interface UserListener
Parameters:
user - The user that is deleted
Throws:
DBException - upon data access error

loggedOffUser

public void loggedOffUser(User user)
                   throws DBException
Description copied from interface: UserListener
This method is called just before a user is logged off Creation date: (5/12/2001 2:26:17 PM)

Specified by:
loggedOffUser in interface UserListener
Parameters:
user - com.jcorporate.expresso.core.security.User
Throws:
DBException

loggedOnUser

public void loggedOnUser(User user)
                  throws DBException
Description copied from interface: UserListener
This method is called just after a user is logged on Creation date: (5/12/2001 2:26:17 PM)

Specified by:
loggedOnUser in interface UserListener
Parameters:
user - com.jcorporate.expresso.core.security.User
Throws:
DBException

modifiedUser

public void modifiedUser(User user)
                  throws DBException
Description copied from interface: UserListener
This method is called just after a user is modified Creation date: (5/12/2001 2:26:17 PM)

Specified by:
modifiedUser in interface UserListener
Parameters:
user - com.jcorporate.expresso.core.security.User
Throws:
DBException

hasExpired

public boolean hasExpired()
Checks to see if the current date is past the expiration date.

Returns:
true if this group membership has expired

setupFields

protected void setupFields()
                    throws DBException
Set up the fields/tables for this object

Overrides:
setupFields in class DBObject
Throws:
DBException - If there is an error setting up the fields as requested. For example, if a field allowing null is requested as part of the key

getField

public String getField(String fieldName)
                throws DBException
Extend the normal getField method

Specified by:
getField in interface DataObject
Overrides:
getField in class DBObject
Parameters:
fieldName - the name of the field to retrieve
Returns:
the value of the field
Throws:
DBException - If there is no such field or it's value cannot be accessed

setGroupName

public void setGroupName(String grpname)
                  throws DBException
set group name; convenience method

Parameters:
grpname - name to set
Throws:
DBException

setUID

public void setUID(int uid)
            throws DBException
set uid; convenience method

Parameters:
uid - uid to set
Throws:
DBException

Expresso 5-6

Please see www.jcorporate.com for information about new Expresso releases.