Class PromptObjectBrowsingXHTMLTransform
- java.lang.Object
-
- com.microstrategy.web.transform.AbstractTransform
-
- com.microstrategy.web.transform.AbstractLayoutTransform
-
- com.microstrategy.web.app.transforms.AbstractPromptObjectTransform
-
- com.microstrategy.web.app.transforms.AbstractPromptExpressionTransform
-
- com.microstrategy.web.app.transforms.PromptCartXHTMLTransform
-
- com.microstrategy.web.app.transforms.PromptObjectBrowsingXHTMLTransform
-
- All Implemented Interfaces:
EnumPromptsBeanEvents
,LayoutTransform
,Transform
public class PromptObjectBrowsingXHTMLTransform extends PromptCartXHTMLTransform
Renders prompt content in a "shopping cart" style with a browseable folder path.
It extends PromptCartTransform by adding a folder path above the prompt question and by allowing end-user to navigate to available subfolders. Also, it will only display objects that are defined in prompt definition; this means that if only templates are to be displayed then any instance will be displayed if found under given subfolder.
This transforms makes use ofTag
instances to render HTML output. See reference toTagsFactory
. The output of this Transform generates well-formed XHTML, supports layout-xml, and it's designed to use external css files for all formatting.- Since:
- MicroStrategy Web 8.0.0
-
-
Field Summary
Fields Modifier and Type Field Description FormalParameter
cssItemName
Formal parameter of the prefix to append to all css class names.-
Fields inherited from class com.microstrategy.web.app.transforms.PromptCartXHTMLTransform
_imgBlank, availableSize, matchCase, searchAvailable, selectedSize
-
Fields inherited from class com.microstrategy.web.app.transforms.AbstractPromptExpressionTransform
attrFormTypeInAvailableList, defaultOperatorId, editMetricQualificationOutputLevel, inputFromTextFile
-
Fields inherited from class com.microstrategy.web.app.transforms.AbstractPromptObjectTransform
_blockCount, _calendar, _cssPrefix, _dataTypeForCalendar, _globalCss, _imagesFolder, cssPrefix, imgBackToTop, imgCalendar, imgError, isDhtmlMode, levelFlag, showRequired
-
Fields inherited from interface com.microstrategy.web.beans.EnumPromptsBeanEvents
ANSWER_SEPARATOR, EXPRESSION_SEPARATOR, ITEM_SEPARATOR, ITEM_SPECIAL_SEPARATOR, PROMPTS_EVENT_ADD_UNITS, PROMPTS_EVENT_ANSWER_ALL_PROMPTS, PROMPTS_EVENT_ANSWER_ANY_PROMPTS, PROMPTS_EVENT_ANSWER_CONSTANT_PROMPT, PROMPTS_EVENT_ANSWER_DIMTY_PROMPT, PROMPTS_EVENT_ANSWER_ELEMENTS_PROMPT, PROMPTS_EVENT_ANSWER_EXPRESSION_PROMPT, PROMPTS_EVENT_ANSWER_OBJECTS_PROMPT, PROMPTS_EVENT_ANSWER_PROMPTS_IN_ADVANCE, PROMPTS_EVENT_ARGUMENT_ACTION_ADD_UNITS, PROMPTS_EVENT_ARGUMENT_ACTION_ANSWER_PROMPT, PROMPTS_EVENT_ARGUMENT_ACTION_BROWSE_CHILD_FOLDER, PROMPTS_EVENT_ARGUMENT_ACTION_BROWSE_ELEMENT, PROMPTS_EVENT_ARGUMENT_ACTION_BROWSE_PARENT_FOLDER, PROMPTS_EVENT_ARGUMENT_ACTION_CANCEL_PROMPT, PROMPTS_EVENT_ARGUMENT_ACTION_CLEAR_EXISTING_AND_ADD_UNITS, PROMPTS_EVENT_ARGUMENT_ACTION_DRILL_WITHIN_HIERARCHY, PROMPTS_EVENT_ARGUMENT_ACTION_HIGHLIGHT_DIMENSION, PROMPTS_EVENT_ARGUMENT_ACTION_HIGHLIGHT_DIMENSION_ATTRIBUTE, PROMPTS_EVENT_ARGUMENT_ACTION_INCREMENTAL_FETCH, PROMPTS_EVENT_ARGUMENT_ACTION_REMOVE_UNITS, PROMPTS_EVENT_ARGUMENT_ACTION_SEARCH_BY_NAME, PROMPTS_EVENT_ARGUMENT_ACTION_SHOW_SUMMARY, PROMPTS_EVENT_ARGUMENT_ANSWER, PROMPTS_EVENT_ARGUMENT_ANSWER_FORMAT, PROMPTS_EVENT_ARGUMENT_ANSWER_MODE_OPTION, PROMPTS_EVENT_ARGUMENT_ANSWER_OPTIONS, PROMPTS_EVENT_ARGUMENT_ATTRIBUTE_ID, PROMPTS_EVENT_ARGUMENT_ATTRIBUTE_ID_AND_FORM_ID, PROMPTS_EVENT_ARGUMENT_BLOCK_BEGIN, PROMPTS_EVENT_ARGUMENT_BLOCK_COUNT, PROMPTS_EVENT_ARGUMENT_BROWSE_PATH, PROMPTS_EVENT_ARGUMENT_CALENDAR_BUTTON, PROMPTS_EVENT_ARGUMENT_CHILD_FOLDER_ID, PROMPTS_EVENT_ARGUMENT_DIMENSION_ID, PROMPTS_EVENT_ARGUMENT_DO_NOT_AUTO_REPROMPT, PROMPTS_EVENT_ARGUMENT_DRILL_TO_ATTRIBUTE_ID, PROMPTS_EVENT_ARGUMENT_EXEC_FLAGS, PROMPTS_EVENT_ARGUMENT_FILTER_STRING, PROMPTS_EVENT_ARGUMENT_FUNCTION, PROMPTS_EVENT_ARGUMENT_HIDDEN_ATTRIBUTE_ID, PROMPTS_EVENT_ARGUMENT_HIDDEN_DIMENSION_ID, PROMPTS_EVENT_ARGUMENT_INCREMENTAL_FETCH_GOTO_PAGE, PROMPTS_EVENT_ARGUMENT_LINK_ANSWERS, PROMPTS_EVENT_ARGUMENT_MATCH_CASE, PROMPTS_EVENT_ARGUMENT_MESSAGE_ALIAS, PROMPTS_EVENT_ARGUMENT_METRIC_ID, PROMPTS_EVENT_ARGUMENT_NAVIGATION, PROMPTS_EVENT_ARGUMENT_OBJECT_TYPE, PROMPTS_EVENT_ARGUMENT_ORIGIN_MESSAGE_ID, PROMPTS_EVENT_ARGUMENT_ORIGIN_SHORT_ANSWER_XML, PROMPTS_EVENT_ARGUMENT_PARENT_FOLDER_ID, PROMPTS_EVENT_ARGUMENT_PLAIN_ELEMENT_PROMPT_ANSWER, PROMPTS_EVENT_ARGUMENT_PLAIN_OBJECT_PROMPT_ANSWER, PROMPTS_EVENT_ARGUMENT_PLAIN_VALUE_PROMPT_ANSWER, PROMPTS_EVENT_ARGUMENT_PROMPT_POSITION, PROMPTS_EVENT_ARGUMENT_REOPEN_PROMPT, PROMPTS_EVENT_ARGUMENT_SAP_VARIABLE_EXCLUDE, PROMPTS_EVENT_ARGUMENT_SEARCH_NAME, PROMPTS_EVENT_ARGUMENT_SEARCH_ROOT, PROMPTS_EVENT_ARGUMENT_SRC_ANSWERS, PROMPTS_EVENT_ARGUMENT_SUB_ROOT_OPERATOR, PROMPTS_EVENT_ARGUMENT_SUBMIT_ANSWER, PROMPTS_EVENT_ARGUMENT_UNITS_TO_ADD, PROMPTS_EVENT_ARGUMENT_UNITS_TO_REMOVE, PROMPTS_EVENT_ARGUMENT_USE_SET_ANSWERS, PROMPTS_EVENT_ARGUMENT_USER_SEPARATOR, PROMPTS_EVENT_BROWSE_DIMENSION_ATTRIBUTE_ELEMENTS, PROMPTS_EVENT_BROWSE_ELEMENTS, PROMPTS_EVENT_BROWSE_HIERARCHICAL_CHILD_FOLDER, PROMPTS_EVENT_BROWSE_HIERARCHICAL_PARENT_FOLDER, PROMPTS_EVENT_CANCEL_ALL_PROMPTS, PROMPTS_EVENT_CANCEL_ANY_PROMPTS, PROMPTS_EVENT_CLEAR_EXISTING_AND_ADD_UNITS, PROMPTS_EVENT_CLEAR_HIERARCHICAL_SEARCH_EXPRESSION, PROMPTS_EVENT_DRILL_WITHIN_HIERARCHY, PROMPTS_EVENT_HIGHLIGHT_DIMENSION, PROMPTS_EVENT_HIGHLIGHT_DIMENSION_ATTRIBUTE, PROMPTS_EVENT_INCREMENTAL_FETCH, PROMPTS_EVENT_NAVIGATE_PROMPTS_BEAN, PROMPTS_EVENT_PROCESS_ALL_PROMPTS, PROMPTS_EVENT_PROCESS_ANY_PROMPTS, PROMPTS_EVENT_REMOVE_UNITS, PROMPTS_EVENT_SEARCH_BY_NAME, PROMPTS_EVENT_SHOW_ALL_PROMPTS_SUMMARY, PROMPTS_EVENT_SHOW_ANY_PROMPTS_SUMMARY, SIMPLE_SEPARATOR_CARET, SIMPLE_SEPARATOR_COMMA, SIMPLE_SEPARATOR_SEMICOLON, UNIT_SEPARATOR
-
-
Constructor Summary
Constructors Constructor Description PromptObjectBrowsingXHTMLTransform()
Default no-args constructor, initialize all the formal parameters.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
canTransform(Transformable data)
Indicates whether or not this component can be transformed.protected java.util.Enumeration
getAvailableItems()
Returns an enumeration of all available items.java.lang.String
getDescription()
Indicates the description for this Transform.void
initializeCss()
Initialize the css information to be used by this transform.void
initializePromptContent()
Initializes prompt content information.boolean
isSearchAvailable()
Indicates whether or notCart
instance has 'search' area enabled or displayed.boolean
isThereAnyFolderToRender()
Determines whether there's a root folder as default point for browsing.boolean
isUpAndDownAvailable()
Indicates whether or notCart
instance has up/down arrows enabled.void
renderBackParentButton(MarkupOutput out)
Renders 'Back' button.void
renderCart(MarkupOutput out)
Renders a shopping cart output.void
renderFoldersPath(MarkupOutput out)
Renders folders formatted path text.void
renderLabel(MarkupOutput out, java.lang.String labelName)
Renders an HTML label.void
renderParentPromptContent(MarkupOutput out)
Renders prompt content defined in parent class.void
renderPromptContent(MarkupOutput out)
Renders the prompt question layout content.void
renderSubFolderPullDown(MarkupOutput out)
Renders subfolders pull down menu.protected void
updateIncrementalFetchCartProperties()
Updates incremental fetch properties in Cart object.protected void
writeAncestors(MarkupOutput out, SimpleList ancestors, int currentAncestor)
Recursevily renders folder anscestors names.-
Methods inherited from class com.microstrategy.web.app.transforms.PromptCartXHTMLTransform
areThereAvailableSelections, createCart, getCart, getErrorMessage, getSearchPattern, getSelectedItems, initializeCart, initializeFormalParameters, initializeImages, isAnswerComplex, isIncrementalFetchAvailable, isSearchActive, isSearchPossible, isUpDownArrowsAvailable, onBeforeApplyDefaultDisplaySettings, processSelectedItems, renderAdd, renderAddAll, renderAvailable, renderDown, renderIncrementalFetch, renderLabel, renderLabel, renderRemove, renderRemoveAll, renderSearch, renderSelected, renderUp, setExtraArguments, supports, supports
-
Methods inherited from class com.microstrategy.web.app.transforms.AbstractPromptExpressionTransform
getDimtyAsString, getDimtyAttributesAsString, getOutputLevel, isBrowserIE6, isCart, isMQLevelEditingSupported, isNodeComplex, isNodeDimtyEmpty, renderHiddenInputsForMQEditor, renderOutputLevelLabel, renderPromptHiddenInputs, setMetricQualOutputLevelAndDimty
-
Methods inherited from class com.microstrategy.web.app.transforms.AbstractPromptObjectTransform
addFormalParameter, arePromptsLoadedFirstTime, checkLevel, getAnswerEvent, getArgumentName, getAttrElemBlockCount, getAvailableDisplayUnits, getCalendar, getContainerServices, getDescriptor, getDescriptor, getDescriptor, getDimensionAttribute, getDisplayHelper, getIntValue, getLocale, getMatchCaseSensitivity, getMultipleEvent, getMultipleEventArgumentString, getObjectsBlockCount, getPrompt, getPromptsAppContext, getPromptsBean, getPromptsList, getRequestKeys, getShowRequired, getStringValue, getSupportedBeanType, getTagsFactory, hasAnswer, initializePromptObject, isBackToTopAnchorEnabled, isDhtmlMode, isDimensionalPrompt, isForDefinition, isIFrameRequest, isItemKeptInCartAvailable, isLocked, isLockedForSearch, isPromptObjectInitialized, isPromptRequired, isPromptSummaryEnabled, isTrue, isXDA_CustomSQL_Report, isXDA_MDX_Report, isXDAReport, newHiddenInputBuilder, newNamespaceEncoder, processAvailableItems, processIncrementalFetch, renderLayout, renderMinMaxHiddenValues, renderPromptAnswerMeaning, renderPromptBackToTopAnchor, renderPromptDefaultAnswer, renderPromptErrorMessage, renderPromptIFrameRequest, renderPromptMeaning, renderPromptNoSelectionsAvailable, renderPromptNotAnswered, renderPromptQuestion, renderPromptRestrictions, renderPromptSummary, renderPromptSummaryAnswer, renderPromptSummaryTitle, renderPromptTitle, setArgumentValue, setAttrElemBlockCount, setEnableBackToTopAnchor, setIsItemKeptInCartAvailable, setLevelFlag, setLocale, setMatchCaseSensitivity, setObjectsBlockCount, setPromptSummary, setShowRequired, transform
-
Methods inherited from class com.microstrategy.web.transform.AbstractLayoutTransform
getLayoutContext, getLayoutDefinition, setLayoutDefinition, transformUsingLayout
-
Methods inherited from class com.microstrategy.web.transform.AbstractTransform
addFormalParam, getEvents, getFormalParams, getID, getPreview, isPreviewAvailable, isResolved, removeFormalParam, setAnnotation, setDeprecated
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.microstrategy.web.transform.LayoutTransform
getLayoutDefinition, setLayoutDefinition
-
Methods inherited from interface com.microstrategy.web.transform.Transform
getFormalParams, getID, getPreview, getSupportedBeanType, isPreviewAvailable, isResolved, transform
-
-
-
-
Field Detail
-
cssItemName
public FormalParameter cssItemName
Formal parameter of the prefix to append to all css class names.
-
-
Method Detail
-
initializePromptContent
public void initializePromptContent() throws WebObjectsException
Initializes prompt content information.
Extends initializePromptContent() by calling processIncrementalFetch and processSelectedItems. It also initialize the Cart object associated.- Overrides:
initializePromptContent
in classPromptCartXHTMLTransform
- Throws:
WebObjectsException
- if something goes wrong when processing Available items.
-
initializeCss
public void initializeCss()
Initialize the css information to be used by this transform.
It invokes parent method so all shared CSS are also initialized.- Overrides:
initializeCss
in classPromptCartXHTMLTransform
-
updateIncrementalFetchCartProperties
protected void updateIncrementalFetchCartProperties()
Updates incremental fetch properties in Cart object.
Mostly, the total of units is calculated after processing available units, hence, we need to reflect this in Cart incremental fetch properties only if Incremental fetch is enabled (isIncrementalFetchAvailable() is invoked). Incremental Fetch object is obtained from Prompt's cart infrastructure. This function updates its Block Count, Block Begin and Total count properties.- Overrides:
updateIncrementalFetchCartProperties
in classPromptCartXHTMLTransform
-
canTransform
public boolean canTransform(Transformable data)
Indicates whether or not this component can be transformed.
Extends canTransform() by returning true only if the prompt is of typeEnumWebPromptType.WebPromptTypeObjects
- Specified by:
canTransform
in interfaceTransform
- Overrides:
canTransform
in classPromptCartXHTMLTransform
- Parameters:
data
- object (PromptObject) to transform- Returns:
- true if the data is a PromptObject of a Expression WebPrompt.
-
isThereAnyFolderToRender
public boolean isThereAnyFolderToRender()
Determines whether there's a root folder as default point for browsing.
This is determined only if there are folder objects in available units.- Returns:
- boolean true if there's a starting point for browsing.
-
getAvailableItems
protected java.util.Enumeration getAvailableItems()
Returns an enumeration of all available items.
It gets all available display units and creates an Enumeration instance which is returned.- Overrides:
getAvailableItems
in classPromptCartXHTMLTransform
- Returns:
- Enumeration of available elements.
-
getDescription
public java.lang.String getDescription()
Indicates the description for this Transform.- Specified by:
getDescription
in interfaceTransform
- Overrides:
getDescription
in classPromptCartXHTMLTransform
- Returns:
String
with the description for the transform.
-
writeAncestors
protected void writeAncestors(MarkupOutput out, SimpleList ancestors, int currentAncestor)
Recursevily renders folder anscestors names.- Parameters:
out
-MarkupOutput
where to write the output of the method.ancestors
- SimpleList list of folder ancestorscurrentAncestor
- int current ancestor being rendered.
-
renderPromptContent
public void renderPromptContent(MarkupOutput out)
Renders the prompt question layout content.
This is accomplished by calling therenderCart()
method. If there are no folders to render then it will simply call the parent'srenderPromptContent
method.- Overrides:
renderPromptContent
in classPromptCartXHTMLTransform
- Parameters:
out
-MarkupOutput
instance where the output HTML will be stored.
-
renderParentPromptContent
public void renderParentPromptContent(MarkupOutput out)
Renders prompt content defined in parent class.
It delegates responsability of rendering prompt's content to parent method renderCart().- Parameters:
out
-MarkupOutput
where to write output.
-
renderCart
public void renderCart(MarkupOutput out)
Renders a shopping cart output.
This is accomplished by calling different methods that will render the individual sections of the prompt layout. The output is organized with a series ofDIV
HTML tags created.
The methods used for the cart output are listed below, whereout
is aMarkupOutput
instance where the HTML generated by these calls is saved.- Overrides:
renderCart
in classPromptCartXHTMLTransform
- Parameters:
out
-MarkupOutput
instance where the output HTML will be stored.
-
isUpAndDownAvailable
public boolean isUpAndDownAvailable()
Indicates whether or notCart
instance has up/down arrows enabled.- Returns:
- boolean true if enabled.
-
isSearchAvailable
public boolean isSearchAvailable()
Indicates whether or notCart
instance has 'search' area enabled or displayed.- Overrides:
isSearchAvailable
in classPromptCartXHTMLTransform
- Returns:
- boolean true if enabled.
-
renderFoldersPath
public void renderFoldersPath(MarkupOutput out)
Renders folders formatted path text.
The output is organized with a series ofDIV
HTML tags created.
The methods used for the cart output are listed below, whereout
is aMarkupOutput
instance where the HTML generated by these calls is saved.- Parameters:
out
-MarkupOutput
instance where the output HTML will be stored.
-
renderBackParentButton
public void renderBackParentButton(MarkupOutput out)
Renders 'Back' button.
THis button will enable end-user to navigate the different folders available to the parent one.- Parameters:
out
-MarkupOutput
instance where the output HTML will be stored.
-
renderSubFolderPullDown
public void renderSubFolderPullDown(MarkupOutput out)
Renders subfolders pull down menu.- Parameters:
out
-MarkupOutput
instance where the output HTML will be stored.
-
renderLabel
public void renderLabel(MarkupOutput out, java.lang.String labelName)
Renders an HTML label.- Parameters:
out
-MarkupOutput
instance where the output HTML will be stored.labelName
- string of label to be displayed.
-
-