public interface RecipeLookupSession extends OsidSession
This session provides methods for retrieving Recipe
objects.
This session defines views that offer differing behaviors when retrieving multiple objects.
Recipes
with the RecipeAdminSession.
Generally, the comparative view should be used for most applications
as it permits operation even if there is data that cannot be accessed. The
methods useFederatedCookbookView()
and
useIsolatedCookbookView()
behave as a radio group and one should
be selected before invoking any lookup methods.
Modifier and Type | Method and Description |
---|---|
boolean |
canLookupRecipes()
Tests if this user can perform
Recipe lookups. |
Cookbook |
getCookbook()
Gets the
Cookbook associated with this session. |
Id |
getCookbookId()
Gets the
Cookbook Id associated with
this session. |
Recipe |
getRecipe(Id recipeId)
Gets the
Recipe specified by its Id. |
RecipeList |
getRecipes()
Gets all
Recipes. |
RecipeList |
getRecipesByGenusType(Type recipeGenusType)
Gets a
RecipeList corresponding to the given recipe
genus Type which does not include recipes of genus
types derived from the specified Type . |
RecipeList |
getRecipesByIds(IdList recipeIds)
Gets a
RecipeList corresponding to the given
IdList. |
RecipeList |
getRecipesByParentGenusType(Type recipeGenusType)
Gets a
RecipeList corresponding to the given recipe
genus Type and include any additional recipes with
genus types derived from the specified Type. |
RecipeList |
getRecipesByProvider(Id resourceId)
Gets a
RecipeList from the given provider . |
RecipeList |
getRecipesByRecordType(Type recipeRecordType)
Gets a
RecipeList containing the given recipe record
Type. |
void |
useComparativeRecipeView()
The returns from the lookup methods may omit or translate elements
based on this session, such as authorization, and not result in an
error.
|
void |
useFederatedCookbookView()
Federates the view for methods in this session.
|
void |
useIsolatedCookbookView()
Isolates the view for methods in this session.
|
void |
usePlenaryRecipeView()
A complete view of the
Recipe returns is desired. |
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
Id getCookbookId()
Cookbook
Id
associated with
this session. Cookbook Id
associated with this sessionmandatory
- This method must be implemented. Cookbook getCookbook() throws OperationFailedException, PermissionDeniedException
Cookbook
associated with this session.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. boolean canLookupRecipes()
Recipe
lookups. A return
of true does not guarantee successful authorization. A return of false
indicates that it is known all methods in this session will result in
a PERMISSION_DENIED.
This is intended as a hint to an
application that may opt not to offer lookup operations to
unauthorized users. false
if lookup methods are not authorized,
true
otherwisemandatory
- This method must be implemented. void useComparativeRecipeView()
mandatory
- This method is must be implemented. void usePlenaryRecipeView()
Recipe
returns is desired.
Methods will return what is requested or result in an error. This view
is used when greater precision is desired at the expense of
interoperability.mandatory
- This method is must be implemented. void useFederatedCookbookView()
mandatory
- This method is must be implemented. void useIsolatedCookbookView()
mandatory
- This method is must be implemented. Recipe getRecipe(Id recipeId) throws NotFoundException, OperationFailedException, PermissionDeniedException
Recipe
specified by its Id.
In
plenary mode, the exact Id
is found or a
NOT_FOUND
results. Otherwise, the returned Recipe
may have a different Id
than requested, such as
the case where a duplicate Id
was assigned to a
Recipe
and retained for compatibility.recipeId
- Id
of the Recipe
NotFoundException
- recipeId
not foundNullArgumentException
- recipeId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method is must be implemented. RecipeList getRecipesByIds(IdList recipeIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
RecipeList
corresponding to the given
IdList.
In plenary mode, the returned list contains all of the
recipes specified in the Id
list, in the order of the
list, including duplicates, or an error results if an Id
in the supplied list is not found or inaccessible. Otherwise,
inaccessible Recipes
may be omitted from the list and
may present the elements in any order including returning a unique
set.recipeIds
- the list of Ids
to retrieve Recipe
listNotFoundException
- an Id was
not foundNullArgumentException
- recipeIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. RecipeList getRecipesByGenusType(Type recipeGenusType) throws OperationFailedException, PermissionDeniedException
RecipeList
corresponding to the given recipe
genus Type
which does not include recipes of genus
types derived from the specified Type
. In plenary
mode, the returned list contains all known recipes or an error
results. Otherwise, the returned list may contain only those recipes
that are accessible through this session.recipeGenusType
- a recipe genus type Recipe
listNullArgumentException
- recipeGenusType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. RecipeList getRecipesByParentGenusType(Type recipeGenusType) throws OperationFailedException, PermissionDeniedException
RecipeList
corresponding to the given recipe
genus Type
and include any additional recipes with
genus types derived from the specified Type.
In plenary
mode, the returned list contains all known recipes or an error
results. Otherwise, the returned list may contain only those recipes
that are accessible through this session.recipeGenusType
- a recipe genus type Recipe
listNullArgumentException
- recipeGenusType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. RecipeList getRecipesByRecordType(Type recipeRecordType) throws OperationFailedException, PermissionDeniedException
RecipeList
containing the given recipe record
Type.
In plenary mode, the returned list contains all
known recipes or an error results. Otherwise, the returned list may
contain only those recipes that are accessible through this session.recipeRecordType
- a recipe record type Recipe
listNullArgumentException
- recipeRecordType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. RecipeList getRecipesByProvider(Id resourceId) throws OperationFailedException, PermissionDeniedException
RecipeList
from the given provider .
In plenary mode, the returned list contains all known recipes
or an error results. Otherwise, the returned list may contain only
those recipes that are accessible through this session.resourceId
- a resource Id
Recipe
listNullArgumentException
- resourceId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. RecipeList getRecipes() throws OperationFailedException, PermissionDeniedException
Recipes.
In plenary mode, the returned list
contains all known recipes or an error results. Otherwise, the
returned list may contain only those recipes that are accessible
through this session. Recipes
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.