|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.sandev.tools.HTTP.AbstractXHTMLFormAdaptor
public abstract class AbstractXHTMLFormAdaptor
A base class for converting a UIFormContext into an XHTML form, and reconstructing it from the posted form data. This class holds general framework methods which don't need to be generated from the structs.
Metatypes are supported through the title field available with most XHTML tags. In the absence of a metatype declaration for a field, a default metatype is sometimes generated to allow for easier trapping of certain situations. These types are:
largetext: for text input fields greater than
TEXTBOX_THRESHOLD
reference: for single reference fields
array: for array fields
For an overview on XHTML/XSLT rendering process, refer to the webapp/templates/ReadMe.html file for your application deployment.
| Field Summary | |
|---|---|
protected boolean[] |
actionSupportMap
A map of UIFormContext ACTION constants to boolean flags. |
static java.lang.String |
CHECKBOXPRFX
A prefix used for checkbox button selection within a form. |
static int |
CSVARRAY_LENGTHMAX
If we are displaying an array as a CSV string, then use this value as the LENGTHMAX. |
static int |
CSVARRAY_LENGTHNORM
If we are displaying an array as a CSV string, then use this value as the LENGTHNORM. |
static java.lang.String |
CURRINSTPRFX
A prefix used to distinguish data for the currInst data member of the UIFormContext. |
static java.lang.String |
DEFAULTFORMNAME
If no form name is specified, then presumably we are just dealing with a single form. |
static java.lang.String |
DELIMITER
A delimiter for field actions, which have multiple component values. |
static int |
DUMPMODE_COLLAPSED
Indicates that an array field has been collapsed by the user and should be dumped out without any contents. |
static int |
DUMPMODE_EDIT
Indicates that the message should be dumped out for context save purposes and the fields should be editable by the user. |
static int |
DUMPMODE_FIND
Indicates that the message should be dumped out for context save purposes, and the fields should support entry of matching values by the user. |
static int |
DUMPMODE_FINDADV
Indicates that the message should be dumped out for context save purposes, and the fields should support entry of match expressions by the user. |
static int |
DUMPMODE_HIDDEN
Indicates that the message or field should be dumped out for context save purposes only and should not be visible in the rendered form display. |
static int |
DUMPMODE_NODUMP
Indicates the field should not be dumped out since there is no access to it. |
static int |
DUMPMODE_READONLY
Indicates that the message should be dumped out for context save purposes and be visible to the user, but not be editable. |
static java.lang.String |
FIELD_ACTION
A prefix to identify buttons for specific fields in the form. |
static java.lang.String |
FIELDLINEBREAK
We need to have an XHTML line break after each field display so that a generated UI is at least vaguely readable without any XSL templates applied. |
static java.lang.String |
FINDCOLLPRFX
A prefix used to distinguish data for the findCollection data member of the UIFormContext. |
static java.lang.String |
FINDQUERYPRFX
A prefix used to distinguish data for the findQuery data member of the UIFormContext. |
static java.lang.String |
FORM_ACTION
A prefix to identify the main buttons for the form. |
protected java.lang.String |
hiddenFieldValue
The value to use when the field value cannot be displayed for security or other filtering reasons. |
static java.lang.String |
RADIOPRFX
A prefix used for radio button selection within a form. |
protected boolean |
readOnlyOverride
Whether read only data should displayed or not. |
static java.lang.String |
ROOTMSGPRFX
A prefix used to distinguish data for the rootMsg data member of the UIFormContext. |
protected static int |
SUBINSTCREATE_ANY
|
protected static int |
SUBINSTCREATE_CONTAINED_ONLY
|
protected static int |
SUBINSTCREATE_UNDEFINED
|
static int |
TEXTBOX_THRESHOLD
Any string whose normal length is longer than this value will be displayed as a textbox. |
static java.lang.String |
TEXTENCODED
Indicator text used when a parameter value has been encoded to preserve formatting. |
static java.lang.String |
UIFORMCTRLPRFX
A prefix to distinguish data for the formControl data member of the UIFormContext. |
static java.lang.String |
UIQUERYPRFX
A prefix to distinguish data for the userQuery data member of the UIFormContext |
static java.lang.String |
UPDATESPRFX
A prefix used to distinguish data for the updates data member of the UIFormContext. |
static int |
XHTMLSTYLE_STANDARD
Indicator to use the standard XHTML dump format of a message field. |
static int |
XHTMLSTYLE_SUMMARY
Indicator to use the summary XHTML dump format of a message field. |
| Fields inherited from interface org.sandev.basics.util.UIFormAdaptor |
|---|
SANDUILINK_REGEXP |
| Constructor Summary | |
|---|---|
AbstractXHTMLFormAdaptor()
Default ctor calls init |
|
| Method Summary | |
|---|---|
protected int |
accessForClass(org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
java.lang.String classname)
Returns the access the user has for the specified class. |
protected int |
accessForInstance(org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
org.sandev.basics.structs.SandMessage msg)
Returns the access the user has for the specified instance. |
boolean |
actionSupportMapValid(boolean[] map)
Do a quick check of the given map to make sure it seems reasonable. |
java.lang.String |
actionToText(int action,
org.sandev.basics.util.UIFormAdaptorCallback callback,
org.sandev.basics.util.UIFormContext uifc)
Given a UIFormContext ACTION constant, return the associated text value for it. |
boolean |
allowEditReadOnly()
accessor for readOnlyOverride |
protected boolean |
arrayActionAllowed(int action,
int access)
Return true if the given action is allowed, false otherwise. |
protected int |
computeFieldDumpMode(int dumpMode,
org.sandev.basics.structs.SandMessage msg,
java.lang.String fieldname,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
boolean isTransientField,
boolean isReadOnlyField,
boolean overrideReadOnly,
int xhtmlstyle)
Return the dump mode for this field based on the given mode and the authorization. |
protected java.lang.String |
convertMultiSelect(java.lang.String value,
java.lang.String classname,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String[] declTextVals,
java.lang.String[] constNames,
java.lang.String[] actualVals)
Undo the conversion of the dumpMultiSelect* methods, so that the result is the declared text value. |
protected java.lang.String |
convertSandUILinks(java.lang.String value)
Convert links within a SandUI as specified in the UIFormAdaptor conventions. |
protected void |
debug(java.lang.String text)
Dump out the debug text. |
protected void |
debug(org.sandev.basics.util.UIFormAdaptorCallback callback,
java.lang.String text)
Dump out the debug text via the log mechanism of the callback. |
protected void |
decodeFieldAction(java.lang.String context,
org.sandev.basics.util.UIFormContext uifc,
java.util.Map params,
org.sandev.basics.util.UIFormAdaptorCallback callback)
Decode the given context and update the uifc accordingly. |
protected java.lang.String |
decodeSelection(java.lang.String loc,
java.lang.String formName,
java.util.Map params)
Find the corresponding radio button for this array field action, and return an updated field location if a radio button was selected. |
void |
disableUnauthorizedActions(org.sandev.basics.util.UIFormContext uifc,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter)
If the user is not authorized for an action that would otherwise be enabled, then disable it. |
protected void |
doExpandCollapse(java.lang.String classtype,
java.lang.String subpos,
org.sandev.basics.util.UIFormContext uifc)
Set up for field EXPAND or COLLAPSE action. |
protected void |
doFieldAdd(java.lang.String classtype,
java.lang.String subpos,
org.sandev.basics.util.UIFormContext uifc)
Set up for field add action. |
protected void |
doFieldDelete(java.lang.String classtype,
java.lang.String subpos,
org.sandev.basics.util.UIFormContext uifc)
Set up for field delete action. |
protected void |
doFieldDeref(java.lang.String classtype,
java.lang.String subpos,
org.sandev.basics.util.UIFormContext uifc)
Set up for the field deref action. |
protected void |
doFieldDrilldown(java.lang.String classtype,
java.lang.String subpos,
org.sandev.basics.util.UIFormContext uifc)
Set up for the field drilldown action. |
protected void |
doFieldFind(java.lang.String classtype,
java.lang.String subpos,
org.sandev.basics.util.UIFormContext uifc)
Set up for field find action. |
protected void |
doFieldMove(java.lang.String classtype,
java.lang.String subpos,
org.sandev.basics.util.UIFormContext uifc)
Set up for field MOVEUP or MOVEDOWN action. |
protected void |
doFieldRemove(java.lang.String classtype,
java.lang.String subpos,
org.sandev.basics.util.UIFormContext uifc)
Set up for field remove action. |
protected void |
doFieldSelect(java.lang.String classtype,
java.lang.String subpos,
org.sandev.basics.util.UIFormContext uifc)
Set up for field select action. |
protected void |
dumpActionButtons(java.io.PrintWriter out,
java.lang.String formName,
org.sandev.basics.util.UIFormContext uifc,
org.sandev.basics.util.UIFormAdaptorCallback callback,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter)
Dump out buttons for the top level actions. |
protected void |
dumpArrayAssociation(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
org.sandev.basics.util.ArrayAssociation choices)
dump out the ArrayAssociation so it can be reconstructed on read. |
protected void |
dumpBinaryInput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
java.lang.String value,
java.lang.String classname,
java.lang.String tipText,
int xhtmlstyle)
Override for implementations that require support for specific data encodings. |
protected void |
dumpBinaryOutput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
int dumpMode,
java.lang.String value,
java.lang.String classname,
java.lang.String tipText,
int xhtmlstyle)
Override for implementations that require support for specific data encodings. |
protected void |
dumpCollapsibleFieldSpanOpen(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String msgclass,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
java.lang.String parentclass,
java.lang.String tipText,
int xhtmlstyle,
int collapse,
org.sandev.basics.util.UIFormAdaptorCallback callback)
Dump out the opening span, an array expansion contraction control if applicable, and the field identifier. |
protected void |
dumpComment(java.io.PrintWriter out,
java.lang.String text)
Dumps out comment text. |
protected void |
dumpComputedStringOutput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String name,
java.lang.String value)
A utility method for dumping out an attribute value which is used for display purposes. |
protected void |
dumpDateInput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
java.util.Date value,
java.lang.String range,
java.lang.String classname,
java.lang.String tipText,
java.lang.String editFormat,
java.lang.String tzid,
int lengthnorm,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting,
int tabindex)
Dump out an editable representation of a Date value. |
protected void |
dumpDateOutput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
int dumpMode,
java.util.Date value,
java.lang.String classname,
java.lang.String tipText,
java.lang.String displayFormat,
java.lang.String tzid,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting)
Dump out a read only representation of a Date value. |
protected void |
dumpDecimalInput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
double value,
int decimals,
boolean sep,
java.lang.String range,
int lengthnorm,
java.lang.String classname,
java.lang.String tipText,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting,
int tabindex)
Creates an input field for a decimal value. |
protected void |
dumpDecimalOutput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
int dumpMode,
double value,
int decimals,
boolean sep,
java.lang.String classname,
java.lang.String tipText,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting)
Creates a read only representation of a decimal value. |
protected void |
dumpFakeFields(java.io.PrintWriter out,
org.sandev.basics.util.UIFormContext uifc,
java.lang.String prefix)
Some things are worth dumping out for informational purposes even though they aren't really form fields. |
void |
dumpFieldIdentifier(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String classname,
java.lang.String tipText,
int xhtmlstyle)
Dump out the field identifier. |
static void |
dumpFieldInputClose(java.io.PrintWriter out,
int xhtmlstyle)
Dump out the field input control closing tag. |
static void |
dumpFieldInputOpen(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
int xhtmlstyle)
Dump out the field input control wrapping tag. |
static void |
dumpFieldSpanClose(java.io.PrintWriter out,
int xhtmlstyle)
Dump out the close span tag as needed. |
static void |
dumpFieldSpanOpen(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String metatype,
int xhtmlstyle)
Dump the enclosing span tag for a field name and entry control. |
protected void |
dumpFindStyleToggle(java.io.PrintWriter out,
int findQueryDisplay,
org.sandev.basics.util.UIFormContext uifc)
Write out a link to toggle from the simple find form to the advanced find form. |
protected java.lang.String |
dumpFormContext(java.io.PrintWriter out,
java.lang.String formName,
org.sandev.basics.util.UIFormContext uifc,
org.sandev.basics.util.UIFormAdaptorCallback callback,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter)
Render the form in XHTML. |
protected java.lang.String |
dumpFormContext(java.io.PrintWriter out,
java.lang.String formName,
org.sandev.basics.util.UIFormContext uifc,
org.sandev.basics.util.UIFormAdaptorCallback callback,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
boolean allowMultiLevelEdit)
Workhorse method for the dumpFormContext method without the boolean override. |
void |
dumpFormOutput(org.sandev.basics.util.UIRenderOutput uiro,
java.lang.String formName,
org.sandev.basics.util.UIFormContext uifc,
org.sandev.basics.util.UIFormAdaptorCallback callback,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter)
Given a form context, write it out as HTML with enough hidden parameters that we can reconstruct it on return. |
protected void |
dumpHiddenParam(java.io.PrintWriter out,
java.lang.String param,
java.lang.String val)
Dumps out a hidden parameter value pair. |
protected void |
dumpHiddenParamWithID(java.io.PrintWriter out,
java.lang.String param,
java.lang.String val)
Same as standard dumpHiddenParam but adds the name as the id. |
protected void |
dumpIntegerInput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
long value,
boolean sep,
java.lang.String range,
int lengthnorm,
java.lang.String classname,
java.lang.String tipText,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting,
int tabindex)
Creates an editable representation of an integer value. |
protected void |
dumpIntegerOutput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
int dumpMode,
long value,
boolean sep,
java.lang.String classname,
java.lang.String tipText,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting)
Creates a read only representation of an integer value. |
protected void |
dumpMatchInput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String classname,
java.lang.String tipText,
java.lang.String metatype,
java.lang.String val,
int xhtmlstyle)
Creates a free text input field with associated label. |
protected abstract java.lang.String |
dumpMessage(java.io.PrintWriter out,
java.lang.String prefix,
org.sandev.basics.structs.SandMessage msg,
int dumpMode,
org.sandev.basics.util.UIFormAdaptorCallback callback,
java.util.Locale locale,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
boolean overrideReadOnly,
org.sandev.basics.sandmessages.UIFormControl formControl,
org.sandev.basics.structs.SandUpdateMessage[] outstandingUpdates,
int subCreate,
int xhtmlstyle)
Given an output writer and a prefix used to uniquely identify the data members for this message, dump the message in the output form specified, in accordance with the authorization visibility. |
protected void |
dumpMessageArrayInput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
org.sandev.basics.sandmessages.UIFormControl formControl,
java.lang.String msgclass,
org.sandev.basics.structs.SandMessage[] msgs,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
boolean isReference,
int subCreate,
int dumpMode,
java.util.Locale locale,
org.sandev.basics.util.UIFormAdaptorCallback callback,
org.sandev.basics.structs.SandMessage parent,
java.lang.String tipText,
int xhtmlstyle,
int collapse,
int tabindex)
Like dumpMessageInput but for an array. |
protected void |
dumpMessageArrayOutput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
java.lang.String classname,
int dumpMode,
org.sandev.basics.structs.SandMessage[] msgs,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
int action,
java.util.Locale locale,
org.sandev.basics.util.UIFormAdaptorCallback callback,
java.lang.String parentclass,
java.lang.String tipText,
int xhtmlstyle,
int collapse)
Like dumpMessageOutput, but for an array of elements. |
protected void |
dumpMessageArraySelect(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
org.sandev.basics.sandmessages.UIFormControl formControl,
java.lang.String msgclass,
org.sandev.basics.structs.SandMessage[] msgs,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
java.util.Locale locale,
org.sandev.basics.util.UIFormAdaptorCallback callback,
org.sandev.basics.structs.SandMessage parent,
java.lang.String tipText,
int xhtmlstyle)
Given an array of |
protected void |
dumpMessageInput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
java.lang.String msgclass,
org.sandev.basics.structs.SandMessage msg,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
boolean isReference,
int subCreate,
java.util.Locale locale,
org.sandev.basics.util.UIFormAdaptorCallback callback,
java.lang.String parentclass,
java.lang.String tipText,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting)
Dumps out an editing representation of a contained or referenced message for display purposes. |
protected void |
dumpMessageInputHeader(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
java.lang.String relpos,
java.lang.String msgclass,
int[] actions,
java.lang.String parentclass,
java.lang.String tipText,
int xhtmlstyle,
int collapse,
org.sandev.basics.util.UIFormAdaptorCallback callback)
Dump the first part of a message input |
protected void |
dumpMessageItem(java.io.PrintWriter out,
java.lang.String formName,
int action,
java.lang.String className,
java.lang.String relpos,
org.sandev.basics.structs.SandMessage msg,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
org.sandev.basics.util.UIFormAdaptorCallback callback,
java.util.Locale locale,
int tabindex)
Worker method for dumpMessageOutput and dumpMessageArrayOutput |
protected void |
dumpMessageOutput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
int dumpMode,
java.lang.String fieldtype,
org.sandev.basics.structs.SandMessage msg,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
int action,
java.util.Locale locale,
org.sandev.basics.util.UIFormAdaptorCallback callback,
java.lang.String classname,
java.lang.String tipText,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting)
Dumps out a read only representation of a contained or referenced message for display purposes. |
protected void |
dumpMultiSelectInput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
java.lang.String declaredTextValue,
java.lang.String[] declTextVals,
java.lang.String[] constNames,
java.lang.String[] actualVals,
java.lang.String classname,
java.lang.String tipText,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting,
int tabindex)
Like dumpMultiSelectOutput, but with the arrays needed to generate dropdown selection lists. |
protected void |
dumpMultiSelectOutput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
int dumpMode,
java.lang.String declaredTextValue,
java.lang.String constantName,
java.lang.String classname,
java.lang.String tipText,
java.lang.String actualValue,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting)
Creates a read only representation of an enumerated type value. |
static void |
dumpOutputText(java.io.PrintWriter out,
org.sandev.basics.sandmessages.ErrorInfo[] eis)
The UIFormContext contains output text, which is typically an informational message to the user. |
void |
dumpPageFooter(org.sandev.basics.util.UIRenderOutput uiro,
java.lang.String closure)
dump the HTML footer |
void |
dumpPageHeader(org.sandev.basics.util.UIRenderOutput uiro,
java.lang.String title,
org.sandev.basics.util.UIFormOwner owner,
java.lang.Object context)
dump the HTML header |
protected void |
dumpPlaceHolder(java.io.PrintWriter out,
java.lang.String prefix,
org.sandev.basics.structs.SandAttrVal[] formatting)
Dumps out a placeholder span that has layout formatting but no content. |
protected void |
dumpQuickFindHeader(java.io.PrintWriter out,
java.lang.String formName,
org.sandev.basics.structs.SandQueryMessage sqm,
org.sandev.basics.util.UIFormAdaptorCallback callback,
org.sandev.basics.util.UIFormContext uifc)
Write out an explanatory header for our find form. |
protected void |
dumpScriptFunctions(java.io.PrintWriter out,
org.sandev.basics.util.UIFormOwner owner,
org.sandev.ui.sandmessages.Screen screen)
Dump out any script functions we need for the form. |
protected void |
dumpSelectionItem(java.io.PrintWriter out,
java.lang.String prefix,
org.sandev.basics.structs.SandInstanceMessage msg,
int index,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
org.sandev.basics.util.UIFormAdaptorCallback callback,
java.util.Locale locale)
Creates a selection item. |
protected void |
dumpStringInput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
java.lang.String value,
int lengthnorm,
int lengthmax,
boolean noecho,
java.lang.String classname,
java.lang.String tipText,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting,
int tabindex)
Dump out an editable representation of a String value. |
protected void |
dumpStringOutput(java.io.PrintWriter out,
java.lang.String prefix,
java.lang.String fieldname,
java.lang.String printname,
java.lang.String metatype,
int dumpMode,
java.lang.String value,
int lengthnorm,
int lengthmax,
boolean noecho,
boolean autoconvert,
org.sandev.basics.util.UIFormAdaptorCallback callback,
java.lang.String classname,
java.lang.String tipText,
int xhtmlstyle,
org.sandev.basics.structs.SandAttrVal[] formatting)
Dump out a read only representation of a String value. |
protected void |
dumpTextButton(java.io.PrintWriter out,
java.lang.String classname,
java.lang.String id,
java.lang.String name,
java.lang.String value,
java.lang.String confirmText,
boolean enabled,
int tabindex)
Creates a button with the given name and value. |
protected void |
dumpUserQuery(java.io.PrintWriter out,
java.lang.String pre,
org.sandev.basics.sandmessages.UIFormQuery uiq,
org.sandev.basics.util.UIFormAdaptorCallback callback,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.UIFormContext uifc)
Dump the UIFormQuery if we have one. |
protected void |
errout(org.sandev.basics.util.FormOutput fo,
java.lang.String field,
java.lang.String text)
Append the given output text to the FormOutput and write it out to the log also. |
protected int |
fieldAccess(org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
org.sandev.basics.structs.SandMessage msg,
java.lang.String fieldname)
Return the field level access of this user for this field. |
protected java.lang.String |
genDescription(org.sandev.basics.structs.SandMessage msg,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
org.sandev.basics.util.UIFormAdaptorCallback callback,
java.util.Locale locale)
Given a SandMessage, generate a single line description for it. |
boolean[] |
getActionSupportMap()
Accessor for actionSupportMap |
boolean[] |
getDefaultActionSupportMap()
Return a default action mapping array |
org.sandev.basics.util.UIFormContext |
getFormContext(org.sandev.basics.util.UIRenderInput uiri,
java.lang.String formName,
org.sandev.basics.util.UIFormContext uifc,
org.sandev.basics.util.UIFormAdaptorCallback callback)
See UIFormAdaptor interface specification. |
java.lang.String |
getHiddenFieldValue()
Accessor for hiddenFieldValue, defaulted appropriately if null |
abstract org.sandev.basics.util.InstanceClassEnumerator |
getInstanceClassEnumerator()
Return an InstanceClassEnumerator for the UIFormManager or other caller to use. |
protected static java.lang.String |
getParam(java.util.Map params,
java.lang.String key)
Utility for retrieving single-valued string parameters. |
protected static java.lang.String[] |
getParams(java.util.Map params,
java.lang.String key)
Like the singular getParam method, but returns all the matching values. |
org.sandev.basics.util.UIRenderInput |
getUIRenderInput()
Returns a new ServletInput object. |
org.sandev.basics.util.UIRenderOutputDirect |
getUIRenderOutputDirect()
Returns null. |
org.sandev.basics.util.UIRenderOutputStream |
getUIRenderOutputStream()
Returns a new ServletOutput object. |
org.sandev.basics.util.UIRenderOutputString |
getUIRenderOutputString()
Returns a new ServletOutputString object. |
protected int |
getUpdateAuth(org.sandev.basics.util.UIFormContext uifc,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
int action)
Figure out what the authorization is for this action type and return it. |
protected org.sandev.basics.structs.SandUpdateMessage |
getUpdateMessageInstance(java.lang.String classname)
Given the name of a SandUpdateMessage, return an instance of it. |
protected java.lang.String |
getValForAttr(java.lang.String attr,
org.sandev.basics.structs.SandAttrVal[] attrvals)
Looks up the specified attr in the attrvals and returns the val. |
protected boolean |
hasEditAccess(org.sandev.basics.util.AuthFilter filter,
org.sandev.basics.util.AuthUser user,
java.lang.String msgclass)
Return true if the user has edit access to the given message class, false otherwise. |
protected void |
init()
Set our action map to the default map. |
protected org.sandev.basics.util.ArrayAssociation |
loadArrayAssociation(java.lang.String prefix,
java.util.Map params,
java.lang.String fieldname)
reconstruct the ArrayAssociation. |
protected void |
loadFormContext(java.lang.String formName,
org.sandev.basics.util.UIFormContext uifc,
java.util.Map params,
org.sandev.basics.util.UIFormAdaptorCallback callback)
Load the given form context from the parameters given. |
protected abstract org.sandev.basics.structs.SandMessage |
loadMessage(java.lang.String prefix,
java.util.Map params,
org.sandev.basics.util.FormOutput fo,
org.sandev.basics.util.UIFormAdaptorCallback callback,
java.util.Locale locale)
Given a prefix used to uniquely identify the data members for this message, and a parameter map, reconstruct the message and return it. |
protected org.sandev.basics.sandmessages.UIFormQuery |
loadUIFCQuery(java.lang.String pre,
java.util.Map params,
org.sandev.basics.util.FormOutput fo,
org.sandev.basics.util.UIFormAdaptorCallback callback)
Load the UIFormQuery if we had one. |
protected boolean |
msgArrayContains(org.sandev.basics.structs.SandMessage[] msgs,
long id)
Return true if the given array of messages contains a message matching the given id, false otherwise. |
abstract org.sandev.basics.structs.SandInstanceMessage |
newInstanceMessage(java.lang.String classtype)
Given the short class name of a SandInstanceMessage, return a new object instance of that class. |
protected java.lang.String |
readEnterKeyAction(java.lang.String currAction,
org.sandev.basics.util.UIFormContext uifc,
java.lang.String formName,
java.util.Map params,
org.sandev.basics.util.UIFormAdaptorCallback callback)
Read the enterKeyPressed parameter and set the action value if defined. |
protected org.sandev.basics.structs.SandMessage |
resolveUpdate(org.sandev.basics.structs.SandMessage msg,
long refID,
org.sandev.basics.structs.SandUpdateMessage[] updates)
Return the pending update version of this message if there is one, otherwise return what was given. |
protected org.sandev.basics.structs.SandMessage[] |
resolveUpdates(org.sandev.basics.structs.SandMessage[] msgs,
long[] refs,
org.sandev.basics.structs.SandUpdateMessage[] updates)
Overwrite the information in the msgs array with the more recent information from the outstanding updates. |
protected int |
safeGetInstanceAccess(org.sandev.basics.util.AuthFilter filter,
org.sandev.basics.util.AuthUser user,
org.sandev.basics.structs.SandUpdateMessage sum,
int defret)
Wrapper for getInstanceAccess that returns the given default if an exception is thrown. |
void |
setActionSupportMap(boolean[] actionFlags)
Mutator for actionSupportMap |
void |
setAllowEditReadOnly(boolean val)
mutator for readOnlyOverride |
void |
setHiddenFieldValue(java.lang.String val)
Mutator for hiddenFieldValue |
protected void |
setupAction(java.lang.String formName,
org.sandev.basics.util.UIFormContext uifc,
java.util.Map params,
org.sandev.basics.util.UIFormAdaptorCallback callback)
Find what button the user pressed and update the uifc accordingly to setup for action processing. |
protected void |
setupFieldAction(int action,
java.lang.String classtype,
java.lang.String subpos,
org.sandev.basics.util.UIFormContext uifc)
Given an action to be applied to a field within the current form, update the UIFormContext appropriately. |
protected void |
setupFieldAction(java.lang.String formName,
org.sandev.basics.util.UIFormContext uifc,
java.util.Map params,
org.sandev.basics.util.UIFormAdaptorCallback callback)
Checks if a field action button by searching the parameter map for anything starting with FIELD_ACTION. |
protected int |
setupQuery(org.sandev.basics.util.UIFormContext uifc)
Init a new query instance as needed, and return DUMPMODE_FIND or DUMPMODE_FINDADV based on the parameter map. |
protected int |
supportsSubInstanceCreation(org.sandev.basics.util.UIFormContext uifc)
Return SUBINSTCREATE_UNDEFINED if we are editing a new instance that is contained within another instance that we are already editing. |
int |
textToAction(java.lang.String text,
org.sandev.basics.util.UIFormAdaptorCallback callback)
Given the text value of an action, return the associated UIFormContext ACTION constant for it. |
protected static java.lang.String |
trapLinksFormat(java.lang.String input)
This is text string output formatting. |
protected int |
valueAccess(org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
org.sandev.basics.structs.SandMessage msg,
java.lang.String fieldname)
Return the value level access for this user for this field. |
protected void |
verifyClassAccess(org.sandev.basics.util.AuthUser user,
org.sandev.basics.util.AuthFilter filter,
java.lang.String classname)
Throw an exception if this user is not allowed to see the given class type. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String CURRINSTPRFX
public static final java.lang.String FINDCOLLPRFX
public static final java.lang.String FINDQUERYPRFX
public static final java.lang.String ROOTMSGPRFX
public static final java.lang.String UPDATESPRFX
public static final java.lang.String UIQUERYPRFX
public static final java.lang.String UIFORMCTRLPRFX
public static final java.lang.String FORM_ACTION
public static final java.lang.String FIELD_ACTION
public static final java.lang.String DELIMITER
public static final java.lang.String RADIOPRFX
public static final java.lang.String CHECKBOXPRFX
public static final int DUMPMODE_NODUMP
public static final int DUMPMODE_HIDDEN
public static final int DUMPMODE_READONLY
public static final int DUMPMODE_EDIT
public static final int DUMPMODE_FIND
public static final int DUMPMODE_FINDADV
public static final int DUMPMODE_COLLAPSED
public static final int TEXTBOX_THRESHOLD
public static final int CSVARRAY_LENGTHNORM
public static final int CSVARRAY_LENGTHMAX
public static final java.lang.String DEFAULTFORMNAME
public static final java.lang.String TEXTENCODED
public static final java.lang.String FIELDLINEBREAK
public static final int XHTMLSTYLE_STANDARD
public static final int XHTMLSTYLE_SUMMARY
protected java.lang.String hiddenFieldValue
protected boolean readOnlyOverride
protected boolean[] actionSupportMap
protected static final int SUBINSTCREATE_UNDEFINED
protected static final int SUBINSTCREATE_CONTAINED_ONLY
protected static final int SUBINSTCREATE_ANY
| Constructor Detail |
|---|
public AbstractXHTMLFormAdaptor()
| Method Detail |
|---|
public java.lang.String getHiddenFieldValue()
getHiddenFieldValue in interface org.sandev.basics.util.UIFormAdaptorpublic void setHiddenFieldValue(java.lang.String val)
setHiddenFieldValue in interface org.sandev.basics.util.UIFormAdaptorpublic boolean allowEditReadOnly()
allowEditReadOnly in interface org.sandev.basics.util.UIFormAdaptorpublic void setAllowEditReadOnly(boolean val)
setAllowEditReadOnly in interface org.sandev.basics.util.UIFormAdaptor
public java.lang.String actionToText(int action,
org.sandev.basics.util.UIFormAdaptorCallback callback,
org.sandev.basics.util.UIFormContext uifc)
public int textToAction(java.lang.String text,
org.sandev.basics.util.UIFormAdaptorCallback callback)
public boolean[] getActionSupportMap()
getActionSupportMap in interface org.sandev.basics.util.UIFormAdaptor
public void setActionSupportMap(boolean[] actionFlags)
throws org.sandev.basics.util.UIFormAdaptorException
setActionSupportMap in interface org.sandev.basics.util.UIFormAdaptororg.sandev.basics.util.UIFormAdaptorExceptionpublic boolean[] getDefaultActionSupportMap()
getDefaultActionSupportMap in interface org.sandev.basics.util.UIFormAdaptorpublic boolean actionSupportMapValid(boolean[] map)
protected void init()
public org.sandev.basics.util.UIRenderInput getUIRenderInput()
ServletInput object.
getUIRenderInput in interface org.sandev.basics.util.UIFormAdaptorpublic org.sandev.basics.util.UIRenderOutputDirect getUIRenderOutputDirect()
getUIRenderOutputDirect in interface org.sandev.basics.util.UIFormAdaptorpublic org.sandev.basics.util.UIRenderOutputStream getUIRenderOutputStream()
ServletOutput object.
getUIRenderOutputStream in interface org.sandev.basics.util.UIFormAdaptor