public abstract class AbstractProxyControl extends WcmBaseControl implements IProxy
IProxy
and extends the
WcmBaseControl
. It acts as the base class for all classes that
work as interface between the WD-framework and the rendering classes underneath.Modifier and Type | Field and Description |
---|---|
static String |
CURRENT_COLUMN_META_NAME
Deprecated.
key for the name of the current rendered column
We use it in classes: PropertyColumnRenderer and AbstractUIMenu
|
static String |
DISPATCH_EVENT
Deprecated.
|
static String |
HTMLB_PREFIX
Deprecated.
constant that can be used to filter out parameters in the URL that are only
needed for htmlb.
|
protected boolean |
isFirstCall
Deprecated.
|
static String |
ON_DELEGATED_CLICK
Deprecated.
|
static String |
ON_EXECUTE
Deprecated.
constant to use as a target for the creation of
Event s through
the WdfEventDispatcher for IUICommand |
static String |
ON_MASS_EXECUTE
Deprecated.
constant to use as a target for the creation of
Event s through
the WdfEventDispatcher for IUIMassCommand |
static String |
ON_NAVIGATE
Deprecated.
constant to use as a target for the creation of
Event s through
the WdfEventDispatcher when a navigation via resource-URLs is wanted |
protected HashMap |
renderKeys
Deprecated.
|
protected ISearchSession |
searchsession
Deprecated.
|
BLANK_LINK_TARGET, CELL_PADDING_STANDARD, CELL_SPACING_STANDARD, CONTROL_HEADER_STANDARD, DETAILS_CONFIG_FILE, NONE, RES_BUTTON_ADD, RES_BUTTON_APPLY, RES_BUTTON_BACK, RES_BUTTON_CANCEL, RES_BUTTON_CLOSE, RES_BUTTON_LOAD, RES_BUTTON_MORE, RES_BUTTON_OK, RES_BUTTON_REMOVE, RES_BUTTON_SAVE, RES_BUTTON_SELECT, RES_BUTTON_UPDATE, resourceContext, SUMMARY
CATEGORY_COLLECTIONRENDERER, CATEGORY_CONTROL, CATEGORY_DEFAULT, CATEGORY_LAYOUT_CONTROLLER, CATEGORY_RESOURCE_RENDERER
PREVIEW_ACTION
Constructor and Description |
---|
AbstractProxyControl()
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
void |
addAdditionlParameters(String key,
Object value)
Deprecated.
add parameter in the helpers hashMap
|
void |
addControlStatus(String id,
IControlStatus status)
Deprecated.
As of NetWeaver 7.1
|
void |
addKey(String id,
com.sap.netweaver.kmc.navigationpersistence.Key key)
Deprecated.
As of NetWeaver 7.1
|
protected boolean |
checkEvent(com.sapportals.wdf.event.WdfEvent event)
Deprecated.
As of NetWeaver 7.1
|
boolean |
clearAdditionlParameters(String key)
Deprecated.
|
String |
createDispatchableID(String handler,
ArrayList values)
Deprecated.
As of NetWeaver 7.1
|
String |
createDispatchableID(String handler,
String value)
Deprecated.
As of NetWeaver 7.1
|
abstract String |
createNavigationTarget(ICollection collection)
Deprecated.
As of NetWeaver 7.1
|
List |
decodeValues(com.sapportals.htmlb.event.Event event)
Deprecated.
As of NetWeaver 7.1
|
protected void |
deleteAllControlStatus(boolean partial)
Deprecated.
As of NetWeaver 7.1
|
void |
deleteControlStatus(String id)
Deprecated.
As of NetWeaver 7.1
|
Object |
getAdditionlParameters(String key)
Deprecated.
get parameter from helpers hashMap
|
ResourcePropertyAmalgamation |
getAmalgamation()
Deprecated.
As of NetWeaver 7.1
|
abstract IUIBaseCommand |
getCommand()
Deprecated.
As of NetWeaver 7.1
|
IControlStatus |
getControlStatus(String id)
Deprecated.
As of NetWeaver 7.1
|
String |
getCssCacheID()
Deprecated.
As of NetWeaver 7.1
|
com.sapportals.htmlb.page.DynPage |
getDynamicPage()
Deprecated.
As of NetWeaver 7.1
|
abstract String |
getDynamicPane()
Deprecated.
As of NetWeaver 7.1
|
ArrayList |
getEventValues(com.sapportals.htmlb.event.Event event)
Deprecated.
As of NetWeaver 7.1
|
String[] |
getInputFromEntryControls()
Deprecated.
As of NetWeaver 7.1
|
com.sap.netweaver.kmc.navigationpersistence.Key |
getKey(String id)
Deprecated.
As of NetWeaver 7.1
|
protected MetaStatus.KeyMap |
getKeyMap()
Deprecated.
As of NetWeaver 7.1
|
abstract Hashtable |
getParameters()
Deprecated.
As of NetWeaver 7.1
|
abstract com.sapportals.wdf.element.PaneElement |
getPresentDynamicPane()
Deprecated.
As of NetWeaver 7.1
|
IProperty |
getProperty(IResource resource,
IPropertyName name)
Deprecated.
As of NetWeaver 7.1
|
IResource |
getResource()
Deprecated.
As of NetWeaver 7.1
|
protected RID |
getRID()
Deprecated.
As of NetWeaver 7.1
|
ISearchSession |
getSearchSession()
Deprecated.
As of NetWeaver 7.1
|
abstract String |
getStartUri()
Deprecated.
As of NetWeaver 7.1
|
abstract IProxy |
getTargetControl()
Deprecated.
As of NetWeaver 7.1
|
abstract String |
getUri()
Deprecated.
As of NetWeaver 7.1
|
String |
getUserInput(String key)
Deprecated.
As of NetWeaver 7.1
|
protected void |
initialize()
Deprecated.
As of NetWeaver 7.1
|
boolean |
isFistCalled()
Deprecated.
|
boolean |
isPreviewEnabled()
Deprecated.
As of NetWeaver 7.1
|
com.sapportals.wdf.event.WdfEvent |
onDelegatedClick(com.sapportals.htmlb.event.Event event)
Deprecated.
As of NetWeaver 7.1
|
abstract com.sapportals.wdf.event.WdfEvent |
onExecute(com.sapportals.htmlb.event.Event event)
Deprecated.
As of NetWeaver 7.1
|
abstract com.sapportals.wdf.event.WdfEvent |
onMassExecute(com.sapportals.htmlb.event.Event event)
Deprecated.
As of NetWeaver 7.1
|
protected void |
refreshAllControlStatus()
Deprecated.
As of NetWeaver 7.1
|
String |
register(IDelegatedReceiver receiver)
Deprecated.
As of NetWeaver 7.1
|
void |
setCssCacheID(String id)
Deprecated.
As of NetWeaver 7.1
|
protected void |
setRID(RID rid)
Deprecated.
As of NetWeaver 7.1
|
abstract void |
setUri(String string)
Deprecated.
As of NetWeaver 7.1
|
getBaseBundleString, getBaseBundleString, getBaseBundleString, getBaseBundleString, getBundleString, getBundleString, getBundleString, getBundleString, getBusinessCardLink, getImage, getParameterConfiguration, getResourceContext, getServicePageUri, handleException, isSection508Rendering, isTestMode, isVisible, readInputData, setControlContext, setResourceContext, setTestMode, setVisible
create, create, createNestedControls, createUnequivocallyComponentId, dispatchHtmlbEvent, dispatchWdfEvent, getControlContext, getDynPage, getID, getParent, getPersistenceComponentManager, getRootControl, getStackId, initializeImpl, isInitialized, register, render, renderPersistentProperties, resetNestedControls, restorePersistentProperties, restoreProperties, setID, setInitialized, setParent, setStackId, triggerInput
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
createUniqueComponentId, getHabitat, getResourceContext
addEntryToDebugList, addEntryToDebugList, isDebugEnabled
protected HashMap renderKeys
protected ISearchSession searchsession
protected boolean isFirstCall
public static final String ON_EXECUTE
Event
s through
the WdfEventDispatcher
for IUICommand
public static final String ON_MASS_EXECUTE
Event
s through
the WdfEventDispatcher
for IUIMassCommand
public static final String ON_NAVIGATE
Event
s through
the WdfEventDispatcher
when a navigation via resource-URLs is wantedpublic static final String ON_DELEGATED_CLICK
public static final String HTMLB_PREFIX
HashMap
with
the URL-Parameters that can be used by all classes holds less entriespublic static final String DISPATCH_EVENT
public static final String CURRENT_COLUMN_META_NAME
public abstract com.sapportals.wdf.event.WdfEvent onExecute(com.sapportals.htmlb.event.Event event) throws com.sapportals.wdf.WdfException
Link
or a Button
with this target has been clicked and the ON_EXECUTE
constant has been
used as target for link or button creation. All IExecCommand
created by the
UICommandFactory
are also pointing to this method when clicked.
The inner structure of the values encoded in the Event
can only be decoded
by the UICommandFactory
The IExecCommand
can change the static
screenflow, defined in the xml-files of the WDF. If they do, this change is carried out within
this method. The returned event triggers the screenflow.event
- encapsulates all information needed to carry out the functionality
of the link or button that raised it.WdfEventReceiver
s and
that might trigger a screenflow. Can return null
.com.sapportals.wdf.WdfException
- that can encapsulate other exceptions.public abstract com.sapportals.wdf.event.WdfEvent onMassExecute(com.sapportals.htmlb.event.Event event) throws com.sapportals.wdf.WdfException
Link
or a Button
with this target has been clicked and the ON_MASS_EXECUTE
constant has been
used as target for link or button creation. All IMassExecCommand
created by the
UICommandFactory
are also pointing to this method when clicked.
The inner structure of the values encoded in the Event
can only be decoded
by the UICommandFactory
The IMassExecCommand
can change the static
screenflow, defined in the xml-files of the WDF. If they do, this change is carried out within
this method. The returned event triggers the screenflow.event
- encapsulates all information needed to carry out the functionality
of the link or button that raised it.WdfEventReceiver
s and
that might trigger a screenflow. Can return null
.com.sapportals.wdf.WdfException
- that can encapsulate other exceptions.public abstract String getDynamicPane()
PaneElement
that holds the PaneElement
that can be replaced with a dynamic screenflow.getDynamicPane
in interface IProxy
public abstract com.sapportals.wdf.element.PaneElement getPresentDynamicPane() throws com.sapportals.wdf.WdfException
PaneElement
that holds the current control.com.sapportals.wdf.WdfException
- This can happen, if the static WDF-file is badly configured,
e.g. if the Pane, whose name is returned in the controls getDynamicPane
holds no or more than one pane.public abstract String createNavigationTarget(ICollection collection) throws WcmException
Link
or Button
to
offer navigation to the given ICollection
. It uses the
WdfEventDispatcher
. The parameters in this string have to be in the
following order: Component
s in an iView may specify the same navigation target,
it is necessary to ensure unique IDs for each of these components. One way to do this
is to add some unique string at a later position in the parameter list, such as
new UUID().toString()
.createNavigationTarget
in interface IProxyProvider
createNavigationTarget
in interface IProxy
collection
- the folder to navigate toWcmException
- if an exception occurs in the repository framework or the WDFpublic abstract IProxy getTargetControl()
return this
getTargetControl
in interface IProxy
WdfEventDispatcher
when
creating a Link
or Button
. Must not return null
public abstract Hashtable getParameters() throws WcmException
getParameters
in interface IProxy
String
, the hashtable's own clone
method will suffice.WcmException
- WcmExceptionpublic abstract IUIBaseCommand getCommand() throws WcmException
getCommand
in interface IProxy
IUIBaseCommand
can ask the AbstractProxyControl
for this
command and use it.WcmException
- WcmExceptionpublic abstract String getUri()
null
*public abstract void setUri(String string)
null
*public abstract String getStartUri()
null
. The start-uri states
the furthermost ancestor of the uri that is available for browsing. *getStartUri
in interface IProxy
public boolean isPreviewEnabled()
isPreviewEnabled
in interface IProxyProvider
isPreviewEnabled
in interface IProxy
false
.public IResource getResource()
null
.
The implementation available in this abstract class always returns null
.getResource
in interface IProxy
protected void initialize() throws com.sapportals.wdf.WdfException
initialize
in class com.sapportals.wdf.stack.Control
com.sapportals.wdf.WdfException
public boolean isFistCalled()
public String[] getInputFromEntryControls() throws WcmException
IInputFieldControl
interface and
asks for their input. The controls must be registered at the WD-Framework
by the implementing class.null
The implementation available in this abstract class always returns null
.WcmException
- Exception raised in failure situationpublic void addKey(String id, com.sap.netweaver.kmc.navigationpersistence.Key key)
INavigationPersistenceService
.
Note that this might be lost even within one request. Therefore, for the
lifetime of any class which adds a key to this method, it is recommended to
store the key within that class as well.
If this class is not in the first call
mode, the id-key map will be stored
across http-request cycles. It will be deleted if a certain type of
WdfEvent
is received or if the global cache for this class expires.id
- the calculated ID of the callling class as it is - for example - created by
the register(IDelegatedEventReceiver)
method. Must not be null
key
- the key to store. Must not be null
;public com.sap.netweaver.kmc.navigationpersistence.Key getKey(String id)
id
- the ID of the calling class - must not be null
addKey(String, Key)
method. This method might return null
.public void addControlStatus(String id, IControlStatus status)
IProxy
ControlStatusService
. The class that calls this method
must be able to reproduce the key at a later time to retrieve the status provided here. The
implementation must map the keys returned by the ControlStatusService
to the key
provided here. The method will raise a NullPointerException
if any of the parameters
is null
addControlStatus
in interface IProxy
id
- - the key the calling class will use to retrieve the given status through the proxy's
getControlStatus
method. Must not be null
status
- - the status the calling class wants to store. Must not be null
public IControlStatus getControlStatus(String id)
IProxy
IControlStatus
that has been added to the proxy using its
addControlStatus
method. The calling class must be aware of the fact, that this
method might return null
, even if the status has been created with this key before.
This can have several reasons. First of all, the ControlStatusService
might have
removed the status due to a too long idle time or a too high server load. Also, certain events
within the interaction (e.g. the navigation to another resource) can trigger the deletion of
all status' registered with that proxy.getControlStatus
in interface IProxy
id
- the key of the status to retrieve, must not be null
IControlStatus
that has been added to the proxy.public void deleteControlStatus(String id)
IProxy
IControlStatus
that was created with the given key.
If no instance for this key can be found, the implementing class should log this fact.deleteControlStatus
in interface IProxy
id
- the id of the status to delete as it was specified by the calling class in the
addControlStatus
method of this interfaceprotected void deleteAllControlStatus(boolean partial)
partial
- flag telling if all IControlStatus
instances
should be deleted (this is for value false
), or if only
instances should be deleted which do not implement the
IRefreshSurvivor
interface (this is for value true
).protected boolean checkEvent(com.sapportals.wdf.event.WdfEvent event)
true
, if the event to clean status has been firedprotected void refreshAllControlStatus()
protected MetaStatus.KeyMap getKeyMap()
public void setCssCacheID(String id)
public String getCssCacheID()
public String register(IDelegatedReceiver receiver)
IProxy
String
instance. After a server-roundtrip, the IProxy
will recreate all
receivers from the previous trip and therefore all of these receivers will register with the same IDs
again. This ensures, that a receiver will be identified when an Event
is received
by the proxypublic ArrayList getEventValues(com.sapportals.htmlb.event.Event event) throws WcmException
WcmException
public com.sapportals.wdf.event.WdfEvent onDelegatedClick(com.sapportals.htmlb.event.Event event) throws com.sapportals.wdf.WdfException
com.sapportals.wdf.WdfException
public ISearchSession getSearchSession()
IProxy
getSearchSession
in interface IProxy
null
public String createDispatchableID(String handler, ArrayList values) throws WcmException
IProxy
Event
is
raised with this id, the event will be send to the implementing class, using the
information of the given parameters.createDispatchableID
in interface IProxyProvider
createDispatchableID
in interface IProxy
handler
- The method that will be called when the event with this id is fired.values
- The objects of this list will be encoded using their
toString()
method and will be available in the handler method when the event is receivedComponent
.WcmException
- Exception raised in failure situationpublic String createDispatchableID(String handler, String value) throws WcmException
IProxy
Event
is
raised with this id, the event will be send to the implementing class, using the
information of the given parameters.createDispatchableID
in interface IProxy
handler
- The method that will be called when the event with this id is fired.value
- The value will be available in the handler method when the event is received.
This value will not be encodedComponent
.WcmException
- Exception raised in failure situationpublic List decodeValues(com.sapportals.htmlb.event.Event event)
IProxy
createDispatchableID
methods and returns the list of parameters
in the same order they were when submitting them. There will be no en- or decoding done to take care of special
characters. If the createDispatchableID(String, String)
method is used,
a List
with only one entry will be returned.decodeValues
in interface IProxy
event
- The event that contains the encoded values.public com.sapportals.htmlb.page.DynPage getDynamicPage()
IProxy
getDynamicPage
in interface IProxy
public ResourcePropertyAmalgamation getAmalgamation()
getAmalgamation
in interface IAmalgamationProvider
public String getUserInput(String key)
IProxy
getUserInput
in interface IProxy
key
- - the key that was used as ID when creating the field in the http-responseprotected final RID getRID()
protected final void setRID(RID rid)
public IProperty getProperty(IResource resource, IPropertyName name) throws WcmException
IProxyProvider
null
will be returned. At the same time,
this resource/name tuple will be marked as an unavailable property. If the same
combination is requested at a later time, no call to the framework is done.
If one of the parameters is null
, a NullPointerException
will be throwngetProperty
in interface IProxyProvider
resource
- Description of the Parametername
- Description of the Parameternull
WcmException
public void addAdditionlParameters(String key, Object value)
key
- value
- public Object getAdditionlParameters(String key)
key
- public boolean clearAdditionlParameters(String key)
Access Rights |
---|
SC | DC | Public Part | ACH |
---|---|---|---|
[sap.com] KMC-CM
|
[sap.com]
|
api
|
EP-KM-CM
|
[sap.com] KMC-WPC
|
[sap.com] tc/kmc/wpc/wpcfacade
|
api
|
EP-PIN-WPC-WCM
|
Copyright 2018 SAP AG Complete Copyright Notice