edu.internet2.middleware.grouper.app.loader.db
Class GrouperLoaderResultset

java.lang.Object
  extended by edu.internet2.middleware.grouper.app.loader.db.GrouperLoaderResultset

public class GrouperLoaderResultset
extends java.lang.Object

encapsulate a resultset into this resultset to be case-insensitive and column-order insensitive


Nested Class Summary
 class GrouperLoaderResultset.Row
          simple struct for subjects
 
Field Summary
static java.lang.String ACTION_NAME_COL
           
static java.lang.String ATTR_DESCRIPTION_COL
           
static java.lang.String ATTR_DISPLAY_NAME_COL
           
static java.lang.String ATTR_NAME_COL
           
static java.lang.String GROUP_ADMINS_COL
           
static java.lang.String GROUP_DESCRIPTION_COL
           
static java.lang.String GROUP_DISPLAY_NAME_COL
           
static java.lang.String GROUP_NAME_COL
           
static java.lang.String GROUP_OPTINS_COL
           
static java.lang.String GROUP_OPTOUTS_COL
           
static java.lang.String GROUP_READERS_COL
           
static java.lang.String GROUP_UPDATERS_COL
           
static java.lang.String GROUP_VIEWERS_COL
           
static java.lang.String IF_HAS_ACTION_NAME_COL
           
static java.lang.String IF_HAS_ATTR_NAME_COL
           
static java.lang.String SUBJECT_ID_COL
           
static java.lang.String SUBJECT_SOURCE_ID_COL
           
static java.lang.String THEN_HAS_ACTION_NAME_COL
           
static java.lang.String THEN_HAS_ATTR_NAME_COL
           
 
Constructor Summary
GrouperLoaderResultset(GrouperLoaderDb grouperLoaderDb, java.lang.String query)
          get a resultset based on a db and query
GrouperLoaderResultset(GrouperLoaderResultset parentResultSet, java.lang.String groupName)
          get a resultset on another resultset and a group name
 
Method Summary
 void assertColumnName(java.lang.String columnName)
          make sure this column name is here
 int columnIndex(java.lang.String columnNameInput)
          find a column index in the resultset
 GrouperLoaderResultset.Row find(java.lang.String subjectId, java.lang.String subjectSourceId)
          find a row and return
 java.lang.Object getCell(int rowIndex, java.lang.String columnName, boolean exceptionOnColNotFound)
          get a cell in the data structure
 java.util.List<java.lang.String> getColumnNames()
          return the column names
 java.util.Set<java.lang.String> groupNames()
          get a set of group names
 boolean hasColumnName(java.lang.String columnName)
          make sure this column name is here
 int numberOfRows()
          return the number of rows
 void remove(GrouperLoaderResultset.Row row)
          remove by row
 void remove(int i)
          remove by row index
 GrouperLoaderResultset.Row retrieveRow(int i)
          find a certain row
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SUBJECT_ID_COL

public static final java.lang.String SUBJECT_ID_COL
See Also:
Constant Field Values

ACTION_NAME_COL

public static final java.lang.String ACTION_NAME_COL
See Also:
Constant Field Values

GROUP_NAME_COL

public static final java.lang.String GROUP_NAME_COL
See Also:
Constant Field Values

GROUP_DISPLAY_NAME_COL

public static final java.lang.String GROUP_DISPLAY_NAME_COL
See Also:
Constant Field Values

GROUP_DESCRIPTION_COL

public static final java.lang.String GROUP_DESCRIPTION_COL
See Also:
Constant Field Values

GROUP_VIEWERS_COL

public static final java.lang.String GROUP_VIEWERS_COL
See Also:
Constant Field Values

GROUP_READERS_COL

public static final java.lang.String GROUP_READERS_COL
See Also:
Constant Field Values

GROUP_UPDATERS_COL

public static final java.lang.String GROUP_UPDATERS_COL
See Also:
Constant Field Values

GROUP_ADMINS_COL

public static final java.lang.String GROUP_ADMINS_COL
See Also:
Constant Field Values

ATTR_NAME_COL

public static final java.lang.String ATTR_NAME_COL
See Also:
Constant Field Values

ATTR_DISPLAY_NAME_COL

public static final java.lang.String ATTR_DISPLAY_NAME_COL
See Also:
Constant Field Values

ATTR_DESCRIPTION_COL

public static final java.lang.String ATTR_DESCRIPTION_COL
See Also:
Constant Field Values

IF_HAS_ATTR_NAME_COL

public static final java.lang.String IF_HAS_ATTR_NAME_COL
See Also:
Constant Field Values

THEN_HAS_ATTR_NAME_COL

public static final java.lang.String THEN_HAS_ATTR_NAME_COL
See Also:
Constant Field Values

IF_HAS_ACTION_NAME_COL

public static final java.lang.String IF_HAS_ACTION_NAME_COL
See Also:
Constant Field Values

THEN_HAS_ACTION_NAME_COL

public static final java.lang.String THEN_HAS_ACTION_NAME_COL
See Also:
Constant Field Values

GROUP_OPTINS_COL

public static final java.lang.String GROUP_OPTINS_COL
See Also:
Constant Field Values

GROUP_OPTOUTS_COL

public static final java.lang.String GROUP_OPTOUTS_COL
See Also:
Constant Field Values

SUBJECT_SOURCE_ID_COL

public static final java.lang.String SUBJECT_SOURCE_ID_COL
See Also:
Constant Field Values
Constructor Detail

GrouperLoaderResultset

public GrouperLoaderResultset(GrouperLoaderResultset parentResultSet,
                              java.lang.String groupName)
get a resultset on another resultset and a group name

Parameters:
parentResultSet -
groupName -

GrouperLoaderResultset

public GrouperLoaderResultset(GrouperLoaderDb grouperLoaderDb,
                              java.lang.String query)
get a resultset based on a db and query

Parameters:
grouperLoaderDb -
query -
Method Detail

groupNames

public java.util.Set<java.lang.String> groupNames()
get a set of group names

Returns:
the set of names, never null

columnIndex

public int columnIndex(java.lang.String columnNameInput)
find a column index in the resultset

Parameters:
columnNameInput -
Returns:
the column index

retrieveRow

public GrouperLoaderResultset.Row retrieveRow(int i)
find a certain row

Parameters:
i -
Returns:
the row

numberOfRows

public int numberOfRows()
return the number of rows

Returns:
the number of rows

getColumnNames

public java.util.List<java.lang.String> getColumnNames()
return the column names

Returns:
the column names

getCell

public java.lang.Object getCell(int rowIndex,
                                java.lang.String columnName,
                                boolean exceptionOnColNotFound)
get a cell in the data structure

Parameters:
rowIndex -
columnName -
exceptionOnColNotFound -
Returns:
the cell or null if col not found and not throwing exception if col not found

assertColumnName

public void assertColumnName(java.lang.String columnName)
make sure this column name is here

Parameters:
columnName -

hasColumnName

public boolean hasColumnName(java.lang.String columnName)
make sure this column name is here

Parameters:
columnName -
Returns:
true if the column is there

remove

public void remove(GrouperLoaderResultset.Row row)
remove by row

Parameters:
row -

remove

public void remove(int i)
remove by row index

Parameters:
i -

find

public GrouperLoaderResultset.Row find(java.lang.String subjectId,
                                       java.lang.String subjectSourceId)
find a row and return

Parameters:
subjectId -
subjectSourceId -
Returns:
row if found, else null