Interface SubjectOntologyAssignmentSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session provides methods to re-assign Subjects to
Ontologies . A Subject may map to multiple Ontologies and
removing the last reference to a Subject is the equivalent of
deleting it. Each Ontology may have its own authorizations
governing who is allowed to operate on it.
Adding a reference of a Subject to another Ontology is
not a copy operation (eg: does not change its Id ).
-
Method Summary
Modifier and TypeMethodDescriptionvoidassignSubjectToOntology(Id subjectId, Id ontologyId) Adds an existingSubjectto anOntology.booleanTests if this user can alter subject/ontology mappings.booleancanAssignSubjectsToOntology(Id ontologyId) Tests if this user can alter subject/ontology mappings.getAssignableOntologyIds(Id ontologyId) Gets a list of ontologies including and under the given ontology node in which any subject can be assigned.getAssignableOntologyIdsForSubject(Id ontologyId, Id subjectId) Gets a list of ontologies including and under the given ontology node in which a specific subject can be assigned.voidreassignSubjectToOntology(Id subjectId, Id fromOntologyId, Id toOntologyId) Moves aSubjectfrom oneOntologyto another.voidunassignSubjectFromOntology(Id subjectId, Id ontologyId) Removes aSubjectfrom anOntology.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionsModifier and TypeMethodDescriptionGets the agent authenticated to this session.Gets theIdof the agent authenticated to this session.Gets the rate of the service clock.getDate()Gets the service date which may be the current date or the effective date in which this session exists.Gets the effective agent in use by this session.Gets theIdof the effective agent in use by this session.Gets theDisplayTextformatTypepreference in effect for this session.Gets the locale indicating the localization preferences in effect for this session.booleanTests if an agent is authenticated to this session.Starts a new transaction for this sesson.booleanTests for the availability of transactions.
-
Method Details
-
canAssignSubjects
boolean canAssignSubjects()Tests if this user can alter subject/ontology mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping methods in this session will result in aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.- Returns:
falseif mapping is not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
canAssignSubjectsToOntology
Tests if this user can alter subject/ontology mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping methods in this session will result in aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.- Parameters:
ontologyId- theIdof theOntology- Returns:
falseif mapping is not authorized,trueotherwise- Throws:
NullArgumentException-ontologyIdisnull- Compliance:
mandatory- This method must be implemented.
-
getAssignableOntologyIds
Gets a list of ontologies including and under the given ontology node in which any subject can be assigned.- Parameters:
ontologyId- theIdof theOntology- Returns:
- list of assignable ontology
Ids - Throws:
NullArgumentException-ontologyIdisnullOperationFailedException- unable to complete request- Compliance:
mandatory- This method must be implemented.
-
getAssignableOntologyIdsForSubject
IdList getAssignableOntologyIdsForSubject(Id ontologyId, Id subjectId) throws OperationFailedException Gets a list of ontologies including and under the given ontology node in which a specific subject can be assigned.- Parameters:
ontologyId- theIdof theOntologysubjectId- theIdof theSubject- Returns:
- list of assignable ontology
Ids - Throws:
NullArgumentException-ontologyIdorsubjectIdisnullOperationFailedException- unable to complete request- Compliance:
mandatory- This method must be implemented.
-
assignSubjectToOntology
void assignSubjectToOntology(Id subjectId, Id ontologyId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds an existingSubjectto anOntology.- Parameters:
subjectId- theIdof theSubjectontologyId- theIdof theOntology- Throws:
AlreadyExistsException-subjectIdis already assigned toontologyIdNotFoundException-subjectIdorontologyIdnot foundNullArgumentException-subjectIdorontologyIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
unassignSubjectFromOntology
void unassignSubjectFromOntology(Id subjectId, Id ontologyId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes aSubjectfrom anOntology.- Parameters:
subjectId- theIdof theSubjectontologyId- theIdof theOntology- Throws:
NotFoundException-subjectIdorontologyIdnot found orsubjectIdnot assigned toontologyIdNullArgumentException-subjectIdorontologyIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
reassignSubjectToOntology
void reassignSubjectToOntology(Id subjectId, Id fromOntologyId, Id toOntologyId) throws NotFoundException, OperationFailedException, PermissionDeniedException Moves aSubjectfrom oneOntologyto another. Mappings to otherOntologiesare unaffected.- Parameters:
subjectId- theIdof theSubjectfromOntologyId- theIdof the currentOntologytoOntologyId- theIdof the destinationOntology- Throws:
NotFoundException-subjectId, fromOntologyId, ortoOntologyIdnot found orsubjectIdnot mapped tofromOntologyIdNullArgumentException-subjectId, fromOntologyId, ortoOntologyIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-