edu.internet2.middleware.subject.provider
Class JDBCSourceAdapter2

java.lang.Object
  extended by edu.internet2.middleware.subject.provider.BaseSourceAdapter
      extended by edu.internet2.middleware.subject.provider.JDBCSourceAdapter
          extended by edu.internet2.middleware.subject.provider.JDBCSourceAdapter2
All Implemented Interfaces:
edu.internet2.middleware.subject.Source
Direct Known Subclasses:
HelperGrouperJdbcSourceAdapter2

public class JDBCSourceAdapter2
extends edu.internet2.middleware.subject.provider.JDBCSourceAdapter

jdbc source adapter based on one table with more complex searches


Field Summary
 
Fields inherited from class edu.internet2.middleware.subject.provider.JDBCSourceAdapter
failOnSearchForTesting
 
Constructor Summary
JDBCSourceAdapter2()
           
JDBCSourceAdapter2(java.lang.String id, java.lang.String name)
           
 
Method Summary
 void checkConfig()
           
 java.lang.String getDbTableOrView()
          table or view where each row is a subject dbTableOrView
 java.lang.String getDefaultSortCol()
          search queries will sort by this.
 java.lang.String getDescriptionCol()
           
 java.lang.String getLowerSearchCol()
          for searches (not by id or identifier), this is the col which holds the search terms, in lower case lowerSearchCol
 java.lang.String getNameCol()
          column which holds the subject name nameCol
 edu.internet2.middleware.subject.Subject getSubject(java.lang.String id, boolean exceptionIfNull)
           
 java.util.Map<java.lang.String,java.lang.String> getSubjectAttributeColToName()
          map of col to attribute name //subjectAttributeCol0 //subjectAttributeName0
 edu.internet2.middleware.subject.Subject getSubjectByIdentifier(java.lang.String id, boolean exceptionIfNull)
           
 java.lang.String getSubjectIdCol()
          column which holds the subject id subjectIdCol
 java.util.Set<java.lang.String> getSubjectIdentifierCols()
          cols which are used in a findByIdentifier query subjectIdentifierCol0
static void main(java.lang.String[] args)
           
 java.util.Set<edu.internet2.middleware.subject.Subject> search(java.lang.String searchValue)
           
 void setDbTableOrView(java.lang.String dbTableOrView1)
          table or view where each row is a subject dbTableOrView
 void setDefaultSortCol(java.lang.String defaultSortCol1)
          search queries will sort by this.
 void setDescriptionCol(java.lang.String descriptionCol1)
           
 void setLowerSearchCol(java.lang.String lowerSearchCol1)
          for searches (not by id or identifier), this is the col which holds the search terms, in lower case lowerSearchCol
 void setNameCol(java.lang.String nameCol1)
          column which holds the subject name nameCol
 void setSubjectAttributeColToName(java.util.Map<java.lang.String,java.lang.String> subjectAttributeColToName1)
          map of col to attribute name //subjectAttributeCol0 //subjectAttributeName0
 void setSubjectIdCol(java.lang.String subjectIdCol1)
          column which holds the subject id subjectIdCol
 void setSubjectIdentifierCols(java.util.Set<java.lang.String> subjectIdentifierCols1)
          cols which are used in a findByIdentifier query subjectIdentifierCol0
 
Methods inherited from class edu.internet2.middleware.subject.provider.JDBCSourceAdapter
getDescriptionAttributeName, getNameAttributeName, getSubject, getSubjectByIdentifier, getSubjectIDAttributeName, getSubjectTypeString, init, loadDriver, printConfig
 
Methods inherited from class edu.internet2.middleware.subject.provider.BaseSourceAdapter
addAttribute, addInitParam, addInternalAttribute, addSubjectType, equals, getId, getInitParam, getInitParams, getInternalAttributes, getName, getSearchAttributes, getSortAttributes, getSubjectByIdOrIdentifier, getSubjectsByIdentifiers, getSubjectsByIds, getSubjectsByIdsOrIdentifiers, getSubjectType, getSubjectTypes, hashCode, loadSearch, removeInitParam, setId, setName, setSearchAttributes, setSortAttributes
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JDBCSourceAdapter2

public JDBCSourceAdapter2()

JDBCSourceAdapter2

public JDBCSourceAdapter2(java.lang.String id,
                          java.lang.String name)
Parameters:
id -
name -
Method Detail

checkConfig

public void checkConfig()
Specified by:
checkConfig in interface edu.internet2.middleware.subject.Source
Overrides:
checkConfig in class edu.internet2.middleware.subject.provider.JDBCSourceAdapter
See Also:
Source.checkConfig()

getDbTableOrView

public java.lang.String getDbTableOrView()
table or view where each row is a subject dbTableOrView

Returns:
table or view

getSubject

public edu.internet2.middleware.subject.Subject getSubject(java.lang.String id,
                                                           boolean exceptionIfNull)
                                                    throws edu.internet2.middleware.subject.SubjectNotFoundException,
                                                           edu.internet2.middleware.subject.SubjectNotUniqueException
Specified by:
getSubject in interface edu.internet2.middleware.subject.Source
Overrides:
getSubject in class edu.internet2.middleware.subject.provider.JDBCSourceAdapter
Throws:
edu.internet2.middleware.subject.SubjectNotFoundException
edu.internet2.middleware.subject.SubjectNotUniqueException
See Also:
JDBCSourceAdapter.getSubject(java.lang.String, boolean)

search

public java.util.Set<edu.internet2.middleware.subject.Subject> search(java.lang.String searchValue)
Specified by:
search in interface edu.internet2.middleware.subject.Source
Overrides:
search in class edu.internet2.middleware.subject.provider.JDBCSourceAdapter
See Also:
JDBCSourceAdapter.search(java.lang.String)

getSubjectByIdentifier

public edu.internet2.middleware.subject.Subject getSubjectByIdentifier(java.lang.String id,
                                                                       boolean exceptionIfNull)
                                                                throws edu.internet2.middleware.subject.SubjectNotFoundException,
                                                                       edu.internet2.middleware.subject.SubjectNotUniqueException
Specified by:
getSubjectByIdentifier in interface edu.internet2.middleware.subject.Source
Overrides:
getSubjectByIdentifier in class edu.internet2.middleware.subject.provider.JDBCSourceAdapter
Throws:
edu.internet2.middleware.subject.SubjectNotFoundException
edu.internet2.middleware.subject.SubjectNotUniqueException
See Also:
JDBCSourceAdapter.getSubjectByIdentifier(java.lang.String, boolean)

setDbTableOrView

public void setDbTableOrView(java.lang.String dbTableOrView1)
table or view where each row is a subject dbTableOrView

Parameters:
dbTableOrView1 -

getSubjectIdCol

public java.lang.String getSubjectIdCol()
column which holds the subject id subjectIdCol

Returns:
the subject id col

setSubjectIdCol

public void setSubjectIdCol(java.lang.String subjectIdCol1)
column which holds the subject id subjectIdCol

Parameters:
subjectIdCol1 -

getNameCol

public java.lang.String getNameCol()
column which holds the subject name nameCol

Returns:
the col for name

setNameCol

public void setNameCol(java.lang.String nameCol1)
column which holds the subject name nameCol

Parameters:
nameCol1 -

getDescriptionCol

public java.lang.String getDescriptionCol()
Returns:
description col

setDescriptionCol

public void setDescriptionCol(java.lang.String descriptionCol1)
Parameters:
descriptionCol1 -

getLowerSearchCol

public java.lang.String getLowerSearchCol()
for searches (not by id or identifier), this is the col which holds the search terms, in lower case lowerSearchCol

Returns:
lower search col

setLowerSearchCol

public void setLowerSearchCol(java.lang.String lowerSearchCol1)
for searches (not by id or identifier), this is the col which holds the search terms, in lower case lowerSearchCol

Parameters:
lowerSearchCol1 -

getDefaultSortCol

public java.lang.String getDefaultSortCol()
search queries will sort by this. Note it might be overridden by caller, e.g. UI defaultSortCol

Returns:
sort col

setDefaultSortCol

public void setDefaultSortCol(java.lang.String defaultSortCol1)
search queries will sort by this. Note it might be overridden by caller, e.g. UI defaultSortCol

Parameters:
defaultSortCol1 -

getSubjectIdentifierCols

public java.util.Set<java.lang.String> getSubjectIdentifierCols()
cols which are used in a findByIdentifier query subjectIdentifierCol0

Returns:
subject id cols

setSubjectIdentifierCols

public void setSubjectIdentifierCols(java.util.Set<java.lang.String> subjectIdentifierCols1)
cols which are used in a findByIdentifier query subjectIdentifierCol0

Parameters:
subjectIdentifierCols1 -

getSubjectAttributeColToName

public java.util.Map<java.lang.String,java.lang.String> getSubjectAttributeColToName()
map of col to attribute name //subjectAttributeCol0 //subjectAttributeName0

Returns:
subject attribute col

setSubjectAttributeColToName

public void setSubjectAttributeColToName(java.util.Map<java.lang.String,java.lang.String> subjectAttributeColToName1)
map of col to attribute name //subjectAttributeCol0 //subjectAttributeName0

Parameters:
subjectAttributeColToName1 -

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception
Parameters:
args -
Throws:
java.lang.Exception