# com.bea.netuix.servlets.controls
PresentationBackableControl Class

public abstract class PresentationBackableControl
extends PresentationControl
implements `Backable`

This class replaces `BackableControl` we couldn't use the same class as it would change the current api, so a new class has been introduced.

Hierarchy
  `Object`
  `UIControl`
  `NetUIxControl`
  `PresentationControl`
  `PresentationBackableControl`

All Implemented Interfaces
  `Backable`, `Serializable`

## Field Summary

`protected static `Debug`` | `debug` Debug

Fields from com.bea.netuix.nf`.`UIControl``
`_cachedRenderData, _cacheExpires, _forkable, _forkPreRender, _forkRender, _invalidateCache, _isCached, _renderCacheable, DEFAULT_CACHE_EXPIRES, lifecycleState, NF_LOADSTATE_LIT, NF_POSTBACK_LIT, RENDER_CHILDREN, RENDER_SKIP_CHILDREN, visitorMap`

## Constructor Summary

PresentationBackableControl(`String` skeletonUri, `String` tagName)
PresentationBackableControl(`String` skeletonUri)

## Method Summary

`protected void` | `dispose`() Lifecycle stage enabling a control to preform final clean up.
`public abstract `BackingContext`` | `getBackingContext`() This method gets called this base class just before each lifecycle methods: init(), handlePostbackData(), raiseChangeEvents(), load(), preRender().
`public final `String`` | `getBackingFile`() The class name of the JSP backing file.
`public final `BackingContext`` | `getCachedBackingContext`()
`public final `JspBacking`` | `getJspBacking`()
`public `HttpServletRequest`` | `getRequest`()
`public `HttpServletResponse`` | `getResponse`()
`protected boolean` | `handlePostbackData`(`String` newValue) Lifecycle method called on the control to provide data from a postback request.
`protected void` | `init`() Lifecycle stage allowing a control to initialize itself.
`public boolean` | `isThreadsafe`()
`public void` | `postPreRender`() Gets caaled just before begin render and post pre-render
`protected void` | `preRender`() This is the last lifecycle stage run before the rendering related lifecycle stages start.
`public final void` | `setBackingFile`(`String` backingFile) Setter called by the framework to set the JSP backing file from the tag attribute.
`public final void` | `setJspBacking`(`JspBacking` jspBacking)
`public void` | `setThreadsafe`(boolean threadsafe)

Methods from `com.bea.netuix.nf.`UIControl``
`addBindDataListener, addChild, addChild, addInitListener, addLoadListener, addPreRenderListener, addUpdateModelListener, beginRender, bindData, cancelPostback, deepToString, doCommand, doCommand, doCommand, endRender, fireBindData, fireEndElementSaxEvent, fireInit, fireLoad, firePreRender, fireStartElementSaxEvent, fireUpdateModel, getCacheExpires, getChild, getChild, getChildByUniqueId, getChildCount, getChildRecursive, getChildRecursiveByUniqueId, getChildren, getChildrenByMarker, getContext, getControlState, getDataSource, getExcludedEvents, getForkPreRender, getId, getNamingScope, getNavigationScope, getParent, getRenderer, getRootControl, getStateLocation, getUniqueId, getVisitor, getVisitorForLifecycle, getVisitorMap, handleBubbleEvent, handleCommand, hasControls, includeEventInWireup, initializeRoot, invalidateCache, isForkable, isForkRender, isLoadedFromFreshSource, isPostback, isRenderCacheable, isShouldRenderChildren, isSuspended, isViewStateEnabled, isVisible, load, loadState, loadStateRecursive, raiseBubbleEvent, raiseChangeEvents, reinstatePostback, removeBindDataListener, removeChild, removeChild, removeChildByUniqueId, removeChildren, removeInitListener, removeLoadListener, removePreRenderListener, removeUpdateModelListener, render, renderChildren, saveState, saveStateRecursive, setChild, setChildren, setControlState, setDataSource, setId, setIsLoadedFromFreshSource, setNewContext, setRenderer, setShouldRenderChildren, setStateLocation, setSuspended, setViewStateEnabled, setViewStateEnabled, setVisible, setVisitorMap, toString, updateModel`

Methods from class `java.lang.`Object``
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods from class `com.bea.netuix.servlets.controls.`Backable``
``getBackingContext`, `getBackingFile`, `getCachedBackingContext`, `getJspBacking`, `getRequest`, `getResponse`, `isThreadsafe`, `setBackingFile`, `setJspBacking`, `setVisible``

## Field Detail

### debug

    protected static Debug debug

## Constructor Detail

### PresentationBackableControl

    public PresentationBackableControl(String skeletonUri,
                                       String tagName)

### PresentationBackableControl

    public PresentationBackableControl(String skeletonUri)

## Method Detail

### dispose() Method

    protected void dispose()

Description copied from UIControl.dispose()
Lifecycle stage enabling a control to preform final clean up. The `dispose` method leaves the control in an unusable state.

Overrides
  UIControl.dispose()

### getBackingContext() Method

    public abstract BackingContext getBackingContext()

This method gets called this base class just before each lifecycle methods: init(), handlePostbackData(), raiseChangeEvents(), load(), preRender().

### getBackingFile() Method

    public final String getBackingFile()

The class name of the JSP backing file. This class must implement `JSPBacking`.

#### Returns

class name of the backing file.

Related Topics

``JspBacking``

### getCachedBackingContext() Method

    public final BackingContext getCachedBackingContext()

### getJspBacking() Method

    public final JspBacking getJspBacking()

### getRequest() Method

    public HttpServletRequest getRequest()

### getResponse() Method

    public HttpServletResponse getResponse()

### handlePostbackData(String) Method

    protected boolean handlePostbackData(String newValue)

Description copied from UIControl.handlePostbackData(String)
Lifecycle method called on the control to provide data from a postback request. If the control returns `true` then the `raiseChangeEvents` method will be called allowing the control to raise the actual events.

Overrides
  UIControl.handlePostbackData(String)

#### Returns

`true` if this value is different than the old value and the control would like to raise an event.

### init() Method

    protected void init()

Description copied from UIControl.init()
Lifecycle stage allowing a control to initialize itself. This is the first lifecycle stage called and is used for internal initialization. A control should not access children during this stage.

Overrides
  UIControl.init()

### isThreadsafe() Method

    public boolean isThreadsafe()

### postPreRender() Method

    public void postPreRender()

Description copied from `PresentationControl.postPreRender()`
Gets caaled just before begin render and post pre-render

Overrides
  `PresentationControl.postPreRender()`

### preRender() Method

    protected void preRender()

Description copied from UIControl.preRender()
This is the last lifecycle stage run before the rendering related lifecycle stages start. At this point, the full state has been loaded, event have run, and all controls are in a stable state.

Overrides
  UIControl.preRender()

### setBackingFile(String) Method

    public final void setBackingFile(String backingFile)

Setter called by the framework to set the JSP backing file from the tag attribute.

#### Parameters

backingFile
  class name of the backing file.

### setJspBacking(JspBacking) Method

    public final void setJspBacking(JspBacking jspBacking)

### setThreadsafe(boolean) Method

    public void setThreadsafe(boolean threadsafe)