|
Nuxeo ECM Projects 5.4.3-SNAPSHOT | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.nuxeo.ecm.directory.BaseSession org.nuxeo.ecm.directory.ldap.LDAPSession
public class LDAPSession
This class represents a session against an LDAPDirectory.
Constructor Summary | |
---|---|
LDAPSession(LDAPDirectory directory,
DirContext dirContext)
|
Method Summary | |
---|---|
boolean |
authenticate(String username,
String password)
Checks that the credentials provided by the UserManager match those registered in the directory. |
void |
close()
Closes the session and all open result sets obtained from this session. |
void |
commit()
|
DocumentModel |
createEntry(DocumentModel entry)
Creates an entry in a directory. |
DocumentModel |
createEntry(Map<String,Object> fieldMap)
Creates an entry in a directory. |
void |
deleteEntry(DocumentModel dm)
Deletes a directory entry. |
void |
deleteEntry(String id)
Deletes a directory entry by id. |
void |
deleteEntry(String id,
Map<String,String> map)
Deletes a directory entry by id and secondary ids. |
DirContext |
getContext()
|
Directory |
getDirectory()
|
DocumentModelList |
getEntries()
Retrieves all the entries in the directory. |
DocumentModel |
getEntry(String id)
Retrieves a directory entry using its id. |
DocumentModel |
getEntry(String id,
boolean fetchReferences)
Retrieves a directory entry using its id. |
DocumentModel |
getEntryFromSource(String id,
boolean fetchReferences)
|
String |
getIdField()
The Id field is the name of the field that is used a primary key: unique and not null value in the whole directory. |
String |
getPasswordField()
|
List<String> |
getProjection(Map<String,Serializable> filter,
Set<String> fulltext,
String columnName)
|
List<String> |
getProjection(Map<String,Serializable> filter,
String columnName)
Executes a query using filter and return only the column columnName. |
boolean |
hasEntry(String id)
Returns true if session has an entry with given id. |
boolean |
isAuthenticating()
Tells whether the directory implementation can be used as an authenticating backend for the UserManager (based on login / password check). |
boolean |
isReadOnly()
|
DocumentModelList |
query(Map<String,Serializable> filter)
Executes a simple query. |
DocumentModelList |
query(Map<String,Serializable> filter,
Set<String> fulltext)
Executes a simple query. |
DocumentModelList |
query(Map<String,Serializable> filter,
Set<String> fulltext,
boolean fetchReferences,
Map<String,String> orderBy)
|
DocumentModelList |
query(Map<String,Serializable> filter,
Set<String> fulltext,
Map<String,String> orderBy)
Executes a simple query. |
DocumentModelList |
query(Map<String,Serializable> filter,
Set<String> fulltext,
Map<String,String> orderBy,
boolean fetchReferences)
Executes a query with the possibility to fetch references |
boolean |
rdnMatchesIdField()
|
void |
rollback()
|
void |
setSubStringMatchType(String type)
|
String |
toString()
|
void |
updateEntry(DocumentModel docModel)
Updates a directory entry. |
Methods inherited from class org.nuxeo.ecm.directory.BaseSession |
---|
createEntryModel, createEntryModel, isReadOnlyEntry, setReadOnlyEntry, setReadWriteEntry |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public LDAPSession(LDAPDirectory directory, DirContext dirContext)
Method Detail |
---|
public void setSubStringMatchType(String type)
public Directory getDirectory()
public DirContext getContext()
public DocumentModel createEntry(Map<String,Object> fieldMap) throws DirectoryException
Session
createEntry
in interface Session
fieldMap
- A map with keys and values that should be stored in a
directory
Note: The values in the map should be of type String
DirectoryException
- if a communication exception occurs or if an
entry with the same id already exists.public DocumentModel getEntry(String id) throws DirectoryException
Session
TODO what happens when the entry is not found? return null if not found?
getEntry
in interface Session
id
- the entry id
DirectoryException
public DocumentModel getEntry(String id, boolean fetchReferences) throws DirectoryException
Session
getEntry
in interface Session
id
- the entry idfetchReferences
- boolean stating if references have to be fetched
DirectoryException
public DocumentModel getEntryFromSource(String id, boolean fetchReferences) throws DirectoryException
getEntryFromSource
in interface EntrySource
DirectoryException
public boolean hasEntry(String id) throws DirectoryException
Session
hasEntry
in interface Session
DirectoryException
public DocumentModelList getEntries() throws DirectoryException
Session
getEntries
in interface Session
DirectoryException
SizeLimitExceededException
- if the number of results is larger
than the limit configured for the directorypublic void updateEntry(DocumentModel docModel) throws DirectoryException
Session
updateEntry
in interface Session
docModel
- The entry to update
DirectoryException
- if a communication error occurspublic void deleteEntry(DocumentModel dm) throws DirectoryException
Session
deleteEntry
in interface Session
dm
- The entry to delete
DirectoryException
- if a communication error occurspublic void deleteEntry(String id) throws DirectoryException
Session
deleteEntry
in interface Session
id
- the id of the entry to delete
DirectoryException
- if a communication error occurspublic void deleteEntry(String id, Map<String,String> map) throws DirectoryException
Session
This is used for hierarchical vocabularies, where the actual unique key is the couple (parent, id).
deleteEntry
in interface Session
id
- the id of the entry to delete.map
- a map of seconday key values.
DirectoryException
- if a communication error occurs.public DocumentModelList query(Map<String,Serializable> filter, Set<String> fulltext, boolean fetchReferences, Map<String,String> orderBy) throws DirectoryException
DirectoryException
public DocumentModelList query(Map<String,Serializable> filter) throws DirectoryException
Session
Does not fetch reference fields.
query
in interface Session
filter
- a filter to apply to entries in directory
DirectoryException
- if a communication error occurs
SizeLimitExceededException
- if the number of results is larger
than the limit configured for the directorypublic DocumentModelList query(Map<String,Serializable> filter, Set<String> fulltext, Map<String,String> orderBy) throws DirectoryException
Session
fieldNames present in the fulltext set are treated as a fulltext match. Does not fetch reference fields.
query
in interface Session
filter
- a filter to apply to entries in directoryfulltext
- a set of field that should be treated as a fulltext
searchorderBy
- a LinkedHashMap with the 'order by' criterias.The key of
an entry of this map represents the column name and the value
of the same entry represent the column order,which may be
'asc' or 'desc'.
DirectoryException
- if a communication error occurs
SizeLimitExceededException
- if the number of results is larger
than the limit configured for the directorypublic DocumentModelList query(Map<String,Serializable> filter, Set<String> fulltext, Map<String,String> orderBy, boolean fetchReferences) throws DirectoryException
Session
query
in interface Session
DirectoryException
Session.query(Map, Set, Map)
public DocumentModelList query(Map<String,Serializable> filter, Set<String> fulltext) throws DirectoryException
Session
fieldNames present in the fulltext set are treated as a fulltext match. Does not fetch reference fields.
query
in interface Session
filter
- a filter to apply to entries in directoryfulltext
- a set of field that should be treated as a fulltext
search
DirectoryException
- if a communication error occurs
SizeLimitExceededException
- if the number of results is larger
than the limit configured for the directorypublic void commit()
commit
in interface Session
public void rollback()
rollback
in interface Session
public void close() throws DirectoryException
Session
Releases this Connection object's resources immediately instead of waiting for them to be automatically released.
TODO: should this operation auto-commit pending changes?
close
in interface Session
DirectoryException
- if a communication error occurspublic List<String> getProjection(Map<String,Serializable> filter, String columnName) throws DirectoryException
Session
getProjection
in interface Session
filter
- the filter for the querycolumnName
- the column whose content should be returned
DirectoryException
SizeLimitExceededException
- if the number of results is larger
than the limit configured for the directorypublic List<String> getProjection(Map<String,Serializable> filter, Set<String> fulltext, String columnName) throws DirectoryException
getProjection
in interface Session
DirectoryException
public boolean authenticate(String username, String password) throws DirectoryException
Session
authenticate
in interface Session
DirectoryException
public String getIdField()
Session
getIdField
in interface Session
public String getPasswordField()
getPasswordField
in interface Session
public boolean isAuthenticating() throws DirectoryException
Session
isAuthenticating
in interface Session
DirectoryException
public boolean isReadOnly()
isReadOnly
in interface Session
public boolean rdnMatchesIdField()
public String toString()
toString
in class Object
public DocumentModel createEntry(DocumentModel entry) throws ClientException
Session
createEntry
in interface Session
entry
- the document model representing the entry to create
ClientException
- if a communication exception occurs or if an
entry with the same id already exists.
|
Nuxeo ECM Projects 5.4.3-SNAPSHOT | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |