edu.internet2.middleware.grouper.pit
Class PITGroup

java.lang.Object
  extended by edu.internet2.middleware.grouper.GrouperAPI
      extended by edu.internet2.middleware.grouper.pit.GrouperPIT
          extended by edu.internet2.middleware.grouper.pit.PITGroup
All Implemented Interfaces:
HibGrouperLifecycle, Hib3GrouperVersioned, GrouperCloneable, GrouperUtil.FieldValuable, Serializable, org.hibernate.classic.Lifecycle

public class PITGroup
extends GrouperPIT
implements Hib3GrouperVersioned

Author:
shilen $Id$
See Also:
Serialized Form

Field Summary
static String COLUMN_CONTEXT_ID
          Context id links together multiple operations into one high level action
static String COLUMN_HIBERNATE_VERSION_NUMBER
          hibernate version
static String COLUMN_ID
          db id for this row
static String COLUMN_NAME
          name
static String COLUMN_SOURCE_ID
          column
static String COLUMN_STEM_ID
          stem
static String FIELD_CONTEXT_ID
          constant for field name for: contextId
static String FIELD_ID
          constant for field name for: id
static String FIELD_NAME
          constant for field name for: name
static String FIELD_SOURCE_ID
          constant for field name for: sourceId
static String FIELD_STEM_ID
          constant for field name for: stemId
static String TABLE_GROUPER_PIT_GROUPS
          name of the table in the database.
 
Fields inherited from class edu.internet2.middleware.grouper.pit.GrouperPIT
COLUMN_ACTIVE, COLUMN_END_TIME, COLUMN_START_TIME, FIELD_ACTIVE_DB, FIELD_END_TIME_DB, FIELD_START_TIME_DB
 
Fields inherited from class edu.internet2.middleware.grouper.GrouperAPI
FIELD_DB_VERSION, FIELD_HIBERNATE_VERSION_NUMBER, INITIAL_VERSION_NUMBER
 
Fields inherited from interface org.hibernate.classic.Lifecycle
NO_VETO, VETO
 
Constructor Summary
PITGroup()
           
 
Method Summary
 GrouperAPI clone()
          deep clone the fields in this object
 void delete()
          delete this object
 boolean equals(Object other)
           
 String getContextId()
           
 String getId()
           
 Set<Member> getMembers(String fieldSourceId, Timestamp pointInTimeFrom, Timestamp pointInTimeTo, Set<edu.internet2.middleware.subject.Source> sources, QueryOptions queryOptions)
          Get members of the group using point in time and the specified field.
 String getName()
           
 String getNameDb()
           
 PITStem getPITStem()
           
 String getSourceId()
           
 String getStemId()
           
 int hashCode()
           
 boolean hasMember(edu.internet2.middleware.subject.Subject subject, String fieldSourceId, Timestamp pointInTimeFrom, Timestamp pointInTimeTo, QueryOptions queryOptions)
          Check if the group has a member using point in time and the specified field.
 void onPreDelete(HibernateSession hibernateSession)
          before a delete (insert) occurs
 void saveOrUpdate()
          save or update this object
 void setContextId(String contextId)
          set context id
 void setId(String id)
          set id
 void setNameDb(String name)
          Set name
 void setSourceId(String sourceId)
          set source id
 void setStemId(String stemId)
           
 
Methods inherited from class edu.internet2.middleware.grouper.pit.GrouperPIT
getActiveDb, getEndTime, getEndTimeDb, getStartTime, getStartTimeDb, isActive, setActiveDb, setEndTimeDb, setStartTimeDb
 
Methods inherited from class edu.internet2.middleware.grouper.GrouperAPI
dbVersion, dbVersionClear, dbVersionDifferentFields, dbVersionIsDifferent, dbVersionReset, fieldValue, getHibernateVersionNumber, onDelete, onLoad, onPostDelete, onPostSave, onPostUpdate, onPreSave, onPreUpdate, onSave, onUpdate, setHibernateVersionNumber
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COLUMN_ID

public static final String COLUMN_ID
db id for this row

See Also:
Constant Field Values

COLUMN_CONTEXT_ID

public static final String COLUMN_CONTEXT_ID
Context id links together multiple operations into one high level action

See Also:
Constant Field Values

COLUMN_NAME

public static final String COLUMN_NAME
name

See Also:
Constant Field Values

COLUMN_STEM_ID

public static final String COLUMN_STEM_ID
stem

See Also:
Constant Field Values

COLUMN_HIBERNATE_VERSION_NUMBER

public static final String COLUMN_HIBERNATE_VERSION_NUMBER
hibernate version

See Also:
Constant Field Values

COLUMN_SOURCE_ID

public static final String COLUMN_SOURCE_ID
column

See Also:
Constant Field Values

FIELD_SOURCE_ID

public static final String FIELD_SOURCE_ID
constant for field name for: sourceId

See Also:
Constant Field Values

FIELD_CONTEXT_ID

public static final String FIELD_CONTEXT_ID
constant for field name for: contextId

See Also:
Constant Field Values

FIELD_ID

public static final String FIELD_ID
constant for field name for: id

See Also:
Constant Field Values

FIELD_NAME

public static final String FIELD_NAME
constant for field name for: name

See Also:
Constant Field Values

FIELD_STEM_ID

public static final String FIELD_STEM_ID
constant for field name for: stemId

See Also:
Constant Field Values

TABLE_GROUPER_PIT_GROUPS

public static final String TABLE_GROUPER_PIT_GROUPS
name of the table in the database.

See Also:
Constant Field Values
Constructor Detail

PITGroup

public PITGroup()
Method Detail

getSourceId

public String getSourceId()
Returns:
source id

setSourceId

public void setSourceId(String sourceId)
set source id

Parameters:
sourceId -

clone

public GrouperAPI clone()
Description copied from class: GrouperAPI
deep clone the fields in this object

Specified by:
clone in interface GrouperCloneable
Specified by:
clone in class GrouperAPI
Returns:
the clone of the object
See Also:
GrouperAPI.clone()

getContextId

public String getContextId()
Returns:
context id

setContextId

public void setContextId(String contextId)
set context id

Parameters:
contextId -

getId

public String getId()
Returns:
id

setId

public void setId(String id)
set id

Parameters:
id -

getName

public String getName()
Returns:
name

getNameDb

public String getNameDb()
Returns:
name

setNameDb

public void setNameDb(String name)
Set name

Parameters:
name -

getStemId

public String getStemId()
Returns:
stem id

setStemId

public void setStemId(String stemId)
Parameters:
stemId -

saveOrUpdate

public void saveOrUpdate()
save or update this object


delete

public void delete()
delete this object


getMembers

public Set<Member> getMembers(String fieldSourceId,
                              Timestamp pointInTimeFrom,
                              Timestamp pointInTimeTo,
                              Set<edu.internet2.middleware.subject.Source> sources,
                              QueryOptions queryOptions)
Get members of the group using point in time and the specified field. If the group currently exists, you must have read access to it. If it has been deleted, you must be wheel or root. You must also be wheel or root if the field has been deleted. An empty set is returned if you do not have appropriate privileges.

Parameters:
fieldSourceId - specifies the field id. This is required.
pointInTimeFrom - the start of the range of the point in time query. This is optional.
pointInTimeTo - the end of the range of the point in time query. This is optional. If this is the same as pointInTimeFrom, then the query will be done at a single point in time rather than a range.
sources - optionally filter on subject source ids.
queryOptions - optional query options.
Returns:
set of pit members

hasMember

public boolean hasMember(edu.internet2.middleware.subject.Subject subject,
                         String fieldSourceId,
                         Timestamp pointInTimeFrom,
                         Timestamp pointInTimeTo,
                         QueryOptions queryOptions)
Check if the group has a member using point in time and the specified field.

Parameters:
subject - specifies the subject. This is required.
fieldSourceId - specifies the field id. This is required.
pointInTimeFrom - the start of the range of the point in time query. This is optional.
pointInTimeTo - the end of the range of the point in time query. This is optional. If this is the same as pointInTimeFrom, then the query will be done at a single point in time rather than a range.
queryOptions - optional query options.
Returns:
boolean

equals

public boolean equals(Object other)
Overrides:
equals in class Object
See Also:
Object.equals(java.lang.Object)

hashCode

public int hashCode()
Overrides:
hashCode in class Object
See Also:
Object.hashCode()

onPreDelete

public void onPreDelete(HibernateSession hibernateSession)
Description copied from interface: HibGrouperLifecycle
before a delete (insert) occurs

Specified by:
onPreDelete in interface HibGrouperLifecycle
Overrides:
onPreDelete in class GrouperAPI
See Also:
GrouperAPI.onPreDelete(edu.internet2.middleware.grouper.hibernate.HibernateSession)

getPITStem

public PITStem getPITStem()
Returns:
pitStem