# com.bea.netuix.application.view
LayoutView Interface

public interface LayoutView
extends `MarkupBasedView`

"Views" are deep copy immutable objects. Unlike "Definitions" and "Instances" Views cannot be modified by the developer. A Instance or a Definition however can always be obtained from the view. The persistence APIs provides course grain and fine grain getters but only fine grain setters. If you are interested in an object and all its children then retrieve the View, if you are only interested in the immediate object and don't care about its children then retrieve the Definition.

The Layout view contains all the Page's Portlets and Books and the information needed to organize these object on the user's screen. These portlets and books are laid out in different layout locations called placeholders and are also positioned within the placeholder them selves.

Related Topics

``View``

All Superinterfaces
  `MarkupBasedView`, `Serializable`, `View`

## Method Summary

`public int` | `getBookCount`() Convenience method to count the total number of books within the placeholders in this layout.
`public `BookView`[]` | `getBookViews`() Get an array of all the books within the placeholders in this layout.
`public `LayoutDefinition`` | `getLayoutDefinition`() Retrieve the associated `LayoutDefinition` from this Layout View.
`public `LayoutDefinitionId`` | `getLayoutDefinitionId`() Getter for layout definition id.
`public `LocalizationResourceView`` | `getLocalizationResourceView`() The Localization resource contains the localized title and description for this layout.
`public int` | `getPlaceableCount`() Convenience method to count the total number of placeables (books or portlets) within the placeholders in this layout.
`public `PlaceableView`[]` | `getPlaceableViews`() Return all the placeables (books and portlets) in all the placeholder on this page.
`public int` | `getPlaceholderCount`() Convenience method to get the number of placeholders for this layout.
`public `PlaceholderView`` | `getPlaceholderView`(`PlaceholderDefinitionId` placeholderDefinitionId) Get the placeholder for a given database definition ID.
`public `PlaceholderView`[]` | `getPlaceholderViews`() Get all placeholders for this layout.
`public int` | `getPortletCount`() Convenience method to count the total number of portlets within the placeholders in this layout.
`public `PortletView`[]` | `getPortletViews`() Get an array of all the portlets within the placeholders in this layout.
`public `String`` | `getWebAppName`() Return the name of the webapp that this layout is associated with.
`public boolean` | `isDeleted`() If isDeleted is true then the layout has been removed from the file system.

Methods from interface `com.bea.netuix.application.view.`MarkupBasedView``
``getMarkupView``

Methods from interface `com.bea.netuix.application.view.`View``
``getDescription`, `getTitle``

## Method Detail

### getBookCount() Method

    public int getBookCount()

Convenience method to count the total number of books within the placeholders in this layout.

### getBookViews() Method

    public BookView[] getBookViews()

Get an array of all the books within the placeholders in this layout. Returns an empty array if there are no such books.

### getLayoutDefinition() Method

    public LayoutDefinition getLayoutDefinition()

Retrieve the associated `LayoutDefinition` from this Layout View. Layout Views are immutable but Definitions are not. Therefore it is often necessary to retrieve the definition from the view in order to update its values and then in turn call the persistence API. The Layout Definition is constructed and updated via it's .layout file. If you create a new .layout file then a new Layout Definition is created in the database. If you edit the file the changes are automatically seen in the database. (during dev time we poll the file system and in production we update the database whenever the webapp is redeployed.

#### Returns

a non null Layout Definition

### getLayoutDefinitionId() Method

    public LayoutDefinitionId getLayoutDefinitionId()

Getter for layout definition id. The layout id is the primary key value for the layout definition in the PF_LAYOUT_DEFINITION table. Unlike Book Pages and Portlets Layouts do not have instances. The admin or end user can still change his or her layout but they are customizing the page not the layout.

#### Returns

a non null unique definition id. This value should never be null as views are constructed via the persistence API.

### getLocalizationResourceView() Method

    public LocalizationResourceView getLocalizationResourceView()

The Localization resource contains the localized title and description for this layout.

#### Returns

a non null LocalizationResourceView customized per the request.

### getPlaceableCount() Method

    public int getPlaceableCount()

Convenience method to count the total number of placeables (books or portlets) within the placeholders in this layout.

### getPlaceableViews() Method

    public PlaceableView[] getPlaceableViews()

Return all the placeables (books and portlets) in all the placeholder on this page.

### getPlaceholderCount() Method

    public int getPlaceholderCount()

Convenience method to get the number of placeholders for this layout.

### getPlaceholderView(PlaceholderDefinitionId) Method

    public PlaceholderView getPlaceholderView(PlaceholderDefinitionId placeholderDefinitionId)

Get the placeholder for a given database definition ID. Return null if no such placeholder exists.

### getPlaceholderViews() Method

    public PlaceholderView[] getPlaceholderViews()

Get all placeholders for this layout. Return an empty array if there are none.

### getPortletCount() Method

    public int getPortletCount()

Convenience method to count the total number of portlets within the placeholders in this layout.

### getPortletViews() Method

    public PortletView[] getPortletViews()

Get an array of all the portlets within the placeholders in this layout. Returns an empty array if there are no such portlets.

### getWebAppName() Method

    public String getWebAppName()

Return the name of the webapp that this layout is associated with. All resources in the portal framework database are scoped to the webapp.

#### Returns

a non null webapp name.

### isDeleted() Method

    public boolean isDeleted()

If isDeleted is true then the layout has been removed from the file system. It was not out right deleted from the database because it is in use by some page somewhere in the system. Either restore the file and this flag will go back to false or remove/replace this layout via the admin tools. If this flag is set on an object the admin tools will display the object with a different icon to denote that it has been removed from the file system

#### Returns

true if this file hase been deleted from the files system.