public class MemoryDirectorySession extends BaseSession
BaseSession.FieldDetector
Modifier and Type | Field and Description |
---|---|
protected Map<String,Map<String,Object>> |
data |
protected String |
passwordField |
autoincrementId, computeMultiTenantId, directory, directoryName, MULTI_TENANT_ID_FORMAT, passwordHashAlgorithm, permissions, POWER_USERS_GROUP, readAllColumns, READONLY_ENTRY_FLAG, referenceClass, schemaName, substringMatchType, TENANT_ID_FIELD
Constructor and Description |
---|
MemoryDirectorySession(MemoryDirectory directory) |
Modifier and Type | Method and Description |
---|---|
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.
|
DocumentModel |
createEntryWithoutReferences(Map<String,Object> fieldMap)
To be implemented for specific creation.
|
void |
deleteEntry(DocumentModel docModel)
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.
|
protected void |
deleteEntryWithoutReferences(String id)
To be implemented for specific deletion.
|
MemoryDirectory |
getDirectory()
To be implemented with a more specific type.
|
DocumentModelList |
getEntries()
Retrieves all the entries in the directory.
|
DocumentModel |
getEntry(String id,
boolean fetchReferences)
Retrieves a directory entry using its id.
|
boolean |
hasEntry(String id)
Returns true if session has an entry with given id.
|
DocumentModelList |
query(Map<String,Serializable> filter,
Set<String> fulltext,
Map<String,String> orderBy,
boolean fetchReferences,
int limit,
int offset)
Executes a query with the possibility to fetch a subset of the results.
|
DocumentModelList |
query(QueryBuilder queryBuilder,
boolean fetchReferences)
Executes a query with the possibility to fetch a subset of the results.
|
List<String> |
queryIds(QueryBuilder queryBuilder)
Executes a query with the possibility to fetch a subset of the results.
|
void |
rollback() |
void |
updateEntry(DocumentModel docModel)
Updates a directory entry.
|
protected List<String> |
updateEntryWithoutReferences(DocumentModel docModel)
To be implemented for specific update.
|
addTenantId, applyQueryLimits, applyQueryLimits, canDeleteMultiTenantEntry, checkDeleteConstraints, checkPermission, computeMultiTenantDirectoryId, createEntryModel, createEntryModel, getCurrentTenantId, getEntry, getEntryFromSource, getIdField, getPasswordField, getProjection, getProjection, hasPermission, hasPermission, isAuthenticating, isMultiTenant, isReadOnly, isReadOnlyEntry, query, query, query, query, setReadAllColumns, setReadOnlyEntry, setReadWriteEntry, toStringList
protected final String passwordField
public MemoryDirectorySession(MemoryDirectory directory)
public MemoryDirectory getDirectory()
getDirectory
in class BaseSession
public boolean authenticate(String username, String password)
Session
public void close()
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?
public void commit()
public void rollback()
public DocumentModel createEntryWithoutReferences(Map<String,Object> fieldMap)
BaseSession
createEntryWithoutReferences
in class BaseSession
protected List<String> updateEntryWithoutReferences(DocumentModel docModel)
BaseSession
updateEntryWithoutReferences
in class BaseSession
protected void deleteEntryWithoutReferences(String id)
BaseSession
deleteEntryWithoutReferences
in class BaseSession
public DocumentModel createEntry(Map<String,Object> fieldMap)
Session
createEntry
in interface Session
createEntry
in class BaseSession
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
public void updateEntry(DocumentModel docModel)
Session
updateEntry
in interface Session
updateEntry
in class BaseSession
docModel
- The entry to updatepublic void deleteEntry(String id)
Session
deleteEntry
in interface Session
deleteEntry
in class BaseSession
id
- the id of the entry to deletepublic DocumentModel getEntry(String id, boolean fetchReferences)
Session
getEntry
in interface Session
getEntry
in class BaseSession
id
- the entry idfetchReferences
- boolean stating if references have to be fetchedpublic DocumentModelList getEntries()
Session
DocumentModelList#totalsize
on the returned list will return
-2 as a special marker for truncated results.getEntries
in interface Session
getEntries
in class BaseSession
public void deleteEntry(String id, Map<String,String> map)
Session
This is used for hierarchical vocabularies, where the actual unique key is the couple (parent, id).
deleteEntry
in interface Session
deleteEntry
in class BaseSession
id
- the id of the entry to delete.map
- a map of secondary key values.public void deleteEntry(DocumentModel docModel)
Session
deleteEntry
in interface Session
deleteEntry
in class BaseSession
docModel
- The entry to deletepublic DocumentModelList query(Map<String,Serializable> filter, Set<String> fulltext, Map<String,String> orderBy, boolean fetchReferences, int limit, int offset)
Session
limit
- maximum number of results ignored if less than 1offset
- number of rows skipped before starting, will be 0 if less than 0.Session.query(Map, Set, Map, boolean)
public DocumentModelList query(QueryBuilder queryBuilder, boolean fetchReferences)
Session
queryBuilder
- the query to use, including limit, offset, ordering and countTotalfetchReferences
- boolean stating if references have to be fetchedpublic List<String> queryIds(QueryBuilder queryBuilder)
Session
queryBuilder
- the query to use, including limit, offset and orderingpublic DocumentModel createEntry(DocumentModel entry)
Session
createEntry
in interface Session
createEntry
in class BaseSession
entry
- the document model representing the entry to createCopyright © 2019 Nuxeo. All rights reserved.