com.bea.netuix.application.manager
Interface IBookInstanceManager

All Known Subinterfaces:
PortalCustomizationManager

public interface IBookInstanceManager

This is the primary interface for performing persistent store operations on BookInstance objects. In general this interface provides coarse grain getters and fine grain setters.

It is important to note that all methods on this interface are fully internationalized and entitled. All titles and descriptions on the objects returned by these methods are internationalized to the preferred locale. Also, all methods are entitled, meaning if the caller does not have the required credentials the method may return a subset of the actual list or be unable to perform the specified function.

Most "Instances" can be thought of as objects tied to a desktop, An Admin has instances derived from the library Definition, and the "end user" has instances derived from the admin instance. Changes made via these APIs require a DesktopDefinitionId and the changes are scoped to that desktop. In other words changes made here do not affect the library or other Desktops. If the "visitorMode" on the customization Context is set the false (default) and the user executing the call is in the "Admin" or "PortalSystemAdministrator" role then these changes take affect at the admin level, and affect ALL users. If the visitorMode is false then the changes only affect the calling user.

See Also
CustomizationContext.setVisitorMode(boolean)
This interface is intended to be implemented only by Oracle Weblogic Portal. Oracle Systems reserves the right to add abstract methods to this interface without notice. Implementations of this interface by other parties must not be expected to compile without change in future versions of Oracle Weblogic Portal.

Method Summary
 NavigableInstance addNavigable(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, BookInstanceId bookInstanceId, NavigableDefinitionId navigableDefinitionId, int position, int align)
          Add a NavigableDefinition (BookDefinition or PageDefinition) to the supplied Book Instance.
 BookInstance getBookInstance(CustomizationContext customizationContext, BookInstanceId bookInstanceId)
          Getter for returning a BookInstance identified by the supplied instance id.
 BookView getBookView(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, BookInstanceId bookInstanceId)
          Getter for returning an immutable deep BookView.
 BookView getBookView(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, String bookDefinitionLabel)
          Getter for returning an immutable deep BookView.
 BookView getShallowBookView(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, BookInstanceId bookInstanceId)
          Getter for returning an immutable shallow BookView.
 BookView getShallowBookView(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, String bookDefinitionLabel)
          Getter for returning an immutable deep BookView.
 NavigableInstance moveNavigable(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, BookInstanceId fromParentBookInstanceId, BookInstanceId toParentBookInstanceId, NavigableInstanceId navigableInstanceId, int position, int alignment)
          Relocate the navigable (child book or page) instance to a new location on the parent book.
 void removeNavigable(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, NavigableInstance navigableInstance)
          Remove a navigable (child book or page) from the specified parent book.
 void setDefaultNavigable(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, BookInstanceId bookInstanceId, NavigableInstanceId navigableInstanceId)
          Set the default navigable (child book or page) on a the parent book.
 BookInstance updateBookInstance(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, BookInstance bookInstance)
          Update the persistent store for the supplied BookInstance.
 

Method Detail

getBookView

BookView getBookView(CustomizationContext customizationContext,
                     DesktopDefinitionId desktopDefinitionId,
                     BookInstanceId bookInstanceId)
                     throws RemoteException

Getter for returning an immutable deep BookView. The BookView object, unlike the BookDefinition or the BookInstance objects contains a deep copy of all references to all child pages, books and so on. The BookView object, however is immutable.

Parameters
customizationContext - customization information such as preferred locales and desktopInstanceId returned.
bookInstanceId - the unique instance id of the book.
Returns
an immutable deep BookView object if one exists, otherwise null.
Throws
RemoteException
See Also
IBookDefinitionManager.getBookView(com.bea.netuix.application.manager.CustomizationContext, com.bea.netuix.application.identifier.BookDefinitionId)

getBookView

BookView getBookView(CustomizationContext customizationContext,
                     DesktopDefinitionId desktopDefinitionId,
                     String bookDefinitionLabel)
                     throws RemoteException

Getter for returning an immutable deep BookView. This method is very similiar to the other getBookView() method, however it does not require knowledge of the bookInstanceId. The correct book instance is returned via the desktop definition id, the book definition label and the visitor mode on the customization context. If visitor mode is set to false the default desktop view will be returned

Parameters
customizationContext - customization information: information used here is VistorMode, username and locale.
desktopDefinitionId - the desktop definition this book is placed in
bookDefinitionLabel - definition label of the book.
Throws
RemoteException

getShallowBookView

BookView getShallowBookView(CustomizationContext customizationContext,
                            DesktopDefinitionId desktopDefinitionId,
                            BookInstanceId bookInstanceId)
                            throws RemoteException

Getter for returning an immutable shallow BookView. The returned view object will be shallow in the sense that it will have no child book or page view arrays. However, you can lazily retrieve those by calling the paginated getPagedNavigables method.

Parameters
customizationContext - customization information such as preferred locales and http request.
bookInstanceId - the unique bookInstanceId.
Returns
an immutable shallow BookView object if one exists, otherwise null.
Throws
RemoteException
See Also
getBookView(com.bea.netuix.application.manager.CustomizationContext, com.bea.netuix.application.identifier.DesktopDefinitionId, com.bea.netuix.application.identifier.BookInstanceId)

getShallowBookView

BookView getShallowBookView(CustomizationContext customizationContext,
                            DesktopDefinitionId desktopDefinitionId,
                            String bookDefinitionLabel)
                            throws RemoteException

Getter for returning an immutable deep BookView. This method is very similiar to the other getShallowBookView() method, however it does not require knowledge of the bookInstanceId. The correct book instance is returned via the desktop definition id, the book definition label and the visitor mode on the customization context. If visitor mode is set to false the default desktop view will be returned

Parameters
customizationContext - customization information: information used here is VistorMode, username and locale.
desktopDefinitionId - the desktop definition this book is placed in
bookDefinitionLabel - definition label of the book.
Throws
RemoteException

getBookInstance

BookInstance getBookInstance(CustomizationContext customizationContext,
                             BookInstanceId bookInstanceId)
                             throws RemoteException

Getter for returning a BookInstance identified by the supplied instance id.

Parameters
customizationContext - customization information such as preferred locales and desktopInstanceId
bookInstanceId - the unique id of the instance to return
Returns
a fully populated internationalized BookInstance objects if it exist, otherwise null.
Throws
RemoteException

updateBookInstance

BookInstance updateBookInstance(CustomizationContext customizationContext,
                                DesktopDefinitionId desktopDefinitionId,
                                BookInstance bookInstance)
                                throws RemoteException,
                                       ObjectNotFoundException,
                                       NotEntitledException

Update the persistent store for the supplied BookInstance. All attributes of the BookInstance are updated in the persistent store.

Parameters
desktopDefinitionId - the desktop context to which this update applies.
bookInstance - the book instance containing all the new data. reference the same book defnition.
Throws
ObjectNotFoundException - the BookInstanceId specified in the bookInstance is bogus.
RemoteException
NotEntitledException

addNavigable

NavigableInstance addNavigable(CustomizationContext customizationContext,
                               DesktopDefinitionId desktopDefinitionId,
                               BookInstanceId bookInstanceId,
                               NavigableDefinitionId navigableDefinitionId,
                               int position,
                               int align)
                               throws RemoteException,
                                      ObjectNotFoundException,
                                      MissingDataException,
                                      NotEntitledException,
                                      IllegalDependencyException

Add a NavigableDefinition (BookDefinition or PageDefinition) to the supplied Book Instance. This is the method you want to call if you want to add a page to a book for a particular user, or if you are an admin to affect all users.

Parameters
desktopDefinitionId - the desktop context to which this update applies.
bookInstanceId - the book instance to add the navigable to.
navigableDefinitionId - the navigable definition id from which to create the instance.
position - the position in the book (or menu) to insert this navigable (starts with 0). If position is set to -1, the Navigable will be appended to the end of the Book.
align - position the page from the left (top) or right (bottom)
Returns
the new Navigable (Page or Book) instance which was just created.
Throws
ObjectNotFoundException - BookDefinitionId or the NavigableDefinition are bogus.
IllegalDependencyException - adding the Navigable to the BookInstance would cause a recursive dependancy
MissingDataException - missing vital data in the NavigableDefinition.
NotEntitledException - if the caller does not have the required permissions to delete this object.
RemoteException
See Also
CustomizationContext.setVisitorMode(boolean)

moveNavigable

NavigableInstance moveNavigable(CustomizationContext customizationContext,
                                DesktopDefinitionId desktopDefinitionId,
                                BookInstanceId fromParentBookInstanceId,
                                BookInstanceId toParentBookInstanceId,
                                NavigableInstanceId navigableInstanceId,
                                int position,
                                int alignment)
                                throws RemoteException,
                                       ObjectNotFoundException,
                                       NotEntitledException,
                                       IllegalDependencyException

Relocate the navigable (child book or page) instance to a new location on the parent book.

Parameters
desktopDefinitionId - the desktop context to which this update applies.
fromParentBookInstanceId - the parent book instance id we are moving this navigable from.
toParentBookInstanceId - the parent book instance to move the navigable instance to.
navigableInstanceId - the identifier identifying the instance to move.
position - the position in the book (or menu) to insert this navigable (starts with zero). After the moved navigable is given this position the entire position array must be normalized to ensure it is still zero-based and that it is contiguous with no missing positions. Therefore, the moved navigable will use this position and previously existing navigables at and beyond this position will have their position incremented by one. After the position incrementing, the positions will be normalized to shift the lowest position to a zero value and then shift any positions necessary to make them contiguous.
alignment - position the page from the left (top) or right (bottom)
Returns
a reference to the newly positioned navigableInstance
Throws
ObjectNotFoundException - BookInstanceId or the NavigableInstanceId are bogus.
NotEntitledException - if the caller does not have the required permissions to delete this object.
IllegalDependencyException - if this move would cause an infinite loop condition
RemoteException
See Also
CustomizationContext.setVisitorMode(boolean)

removeNavigable

void removeNavigable(CustomizationContext customizationContext,
                     DesktopDefinitionId desktopDefinitionId,
                     NavigableInstance navigableInstance)
                     throws RemoteException,
                            ObjectNotFoundException,
                            MissingDataException,
                            NotEntitledException

Remove a navigable (child book or page) from the specified parent book. This method does not delete the navigable; it just removes it from the parent book.

Parameters
desktopDefinitionId - the desktop context to which this update applies.
navigableInstance - the instance to be removed. reference the same book defnition.
Throws
ObjectNotFoundException - BookInstanceId or the NavigableInstanceId are bogus.
NotEntitledException - if the caller does not have the required permissions to delete this object.
RemoteException
MissingDataException
See Also
CustomizationContext.setVisitorMode(boolean)

setDefaultNavigable

void setDefaultNavigable(CustomizationContext customizationContext,
                         DesktopDefinitionId desktopDefinitionId,
                         BookInstanceId bookInstanceId,
                         NavigableInstanceId navigableInstanceId)
                         throws RemoteException,
                                ObjectNotFoundException,
                                NotEntitledException

Set the default navigable (child book or page) on a the parent book.

Parameters
desktopDefinitionId - the desktop context to which this update applies.
bookInstanceId - the parent book instance to set the default on.
navigableInstanceId - the navigable instance id of the child page/book to become the default
Throws
ObjectNotFoundException - BookInstanceId or the NavigableInstanceId are bogus.
NotEntitledException - if the caller does not have the required permissions to delete this object.
RemoteException


Copyright © 2011, Oracle. All rights reserved.