You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by rm...@apache.org on 2013/03/24 18:45:03 UTC
[06/24] Restructuring Scimpi to remove dependencies and enable easier
testing.
http://git-wip-us.apache.org/repos/asf/isis/blob/49518c89/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionButton.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionButton.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionButton.java
index 0192724..2954e4e 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionButton.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionButton.java
@@ -30,12 +30,13 @@ import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.viewer.scimpi.dispatcher.AbstractElementProcessor;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext.Scope;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request;
+import org.apache.isis.viewer.scimpi.Names;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request.Scope;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor;
import org.apache.isis.viewer.scimpi.dispatcher.util.MethodsUtils;
-import org.apache.isis.viewer.scimpi.dispatcher.view.HelpLink;
+import org.apache.isis.viewer.scimpi.dispatcher.view.AbstractElementProcessor;
+import org.apache.isis.viewer.scimpi.dispatcher.view.other.HelpLink;
public class ActionButton extends AbstractElementProcessor {
private static final Logger LOG = Logger.getLogger(ActionButton.class);
@@ -48,28 +49,28 @@ public class ActionButton extends AbstractElementProcessor {
private final static Where where = Where.ANYWHERE;
@Override
- public void process(final Request request) {
- final String objectId = request.getOptionalProperty(OBJECT);
- final String methodName = request.getRequiredProperty(METHOD);
- final String forwardResultTo = request.getOptionalProperty(VIEW);
- final String forwardVoidTo = request.getOptionalProperty(VOID);
- final String forwardErrorTo = request.getOptionalProperty(ERROR);
- final String variable = request.getOptionalProperty(RESULT_NAME);
- final String scope = request.getOptionalProperty(SCOPE);
- final String buttonTitle = request.getOptionalProperty(BUTTON_TITLE);
- String resultOverride = request.getOptionalProperty(RESULT_OVERRIDE);
- final String idName = request.getOptionalProperty(ID, methodName);
- final String className = request.getOptionalProperty(CLASS);
- final boolean showMessage = request.isRequested(SHOW_MESSAGE, false);
- final String completionMessage = request.getOptionalProperty(MESSAGE);
-
- final ObjectAdapter object = MethodsUtils.findObject(request.getContext(), objectId);
- final String version = request.getContext().mapVersion(object);
+ public void process(final TagProcessor tagProcessor) {
+ final String objectId = tagProcessor.getOptionalProperty(OBJECT);
+ final String methodName = tagProcessor.getRequiredProperty(METHOD);
+ final String forwardResultTo = tagProcessor.getOptionalProperty(VIEW);
+ final String forwardVoidTo = tagProcessor.getOptionalProperty(VOID);
+ final String forwardErrorTo = tagProcessor.getOptionalProperty(ERROR);
+ final String variable = tagProcessor.getOptionalProperty(RESULT_NAME);
+ final String scope = tagProcessor.getOptionalProperty(SCOPE);
+ final String buttonTitle = tagProcessor.getOptionalProperty(BUTTON_TITLE);
+ String resultOverride = tagProcessor.getOptionalProperty(RESULT_OVERRIDE);
+ final String idName = tagProcessor.getOptionalProperty(ID, methodName);
+ final String className = tagProcessor.getOptionalProperty(CLASS);
+ final boolean showMessage = tagProcessor.isRequested(SHOW_MESSAGE, false);
+ final String completionMessage = tagProcessor.getOptionalProperty(MESSAGE);
+
+ final ObjectAdapter object = MethodsUtils.findObject(tagProcessor.getContext(), objectId);
+ final String version = tagProcessor.getContext().mapVersion(object);
final ObjectAction action = MethodsUtils.findAction(object, methodName);
final ActionContent parameterBlock = new ActionContent(action);
- request.setBlockContent(parameterBlock);
- request.processUtilCloseTag();
+ tagProcessor.setBlockContent(parameterBlock);
+ tagProcessor.processUtilCloseTag();
final String[] parameters = parameterBlock.getParameters();
final ObjectAdapter[] objectParameters;
@@ -77,7 +78,7 @@ public class ActionButton extends AbstractElementProcessor {
if (action.isContributed()) {
objectParameters= null;
System.arraycopy(parameters, 0, parameters, 1, parameters.length - 1);
- parameters[0] = request.getContext().mapObject(object, Scope.REQUEST);
+ parameters[0] = tagProcessor.getContext().mapObject(object, Scope.REQUEST);
target = action.realTarget(object);
if (!action.hasReturn() && resultOverride == null) {
resultOverride = parameters[0];
@@ -95,7 +96,7 @@ public class ActionButton extends AbstractElementProcessor {
Localization localization = IsisContext.getLocalization();
objectParameters[i] = facet.parseTextEntry(null, parameters[i], localization);
} else {
- objectParameters[i] = MethodsUtils.findObject(request.getContext(), parameters[i]);
+ objectParameters[i] = MethodsUtils.findObject(tagProcessor.getContext(), parameters[i]);
}
i++;
}
@@ -103,7 +104,7 @@ public class ActionButton extends AbstractElementProcessor {
if (MethodsUtils.isVisibleAndUsable(object, action, where) && MethodsUtils.canRunMethod(object, action, objectParameters).isAllowed()) {
// TODO use the form creation mechanism as used in ActionForm
- write(request, target, action, parameters, objectId, version, forwardResultTo, forwardVoidTo, forwardErrorTo, variable, scope, buttonTitle, completionMessage, resultOverride, idName, className);
+ write(tagProcessor, target, action, parameters, objectId, version, forwardResultTo, forwardVoidTo, forwardErrorTo, variable, scope, buttonTitle, completionMessage, resultOverride, idName, className);
}
if (showMessage) {
@@ -112,35 +113,35 @@ public class ActionButton extends AbstractElementProcessor {
final String notUsable = usable.getReason();
if (notUsable != null) {
String title = buttonTitle == null ? action.getName() : buttonTitle;
- disabledButton(request, title, notUsable, idName, className);
+ disabledButton(tagProcessor, title, notUsable, idName, className);
}
} else {
final Consent valid = action.isProposedArgumentSetValid(object, objectParameters);
final String notValid = valid.getReason();
if (notValid != null) {
String title = buttonTitle == null ? action.getName() : buttonTitle;
- disabledButton(request, title, notValid, idName, className);
+ disabledButton(tagProcessor, title, notValid, idName, className);
}
}
}
- request.popBlockContent();
+ tagProcessor.popBlockContent();
}
- private void disabledButton(final Request request, final String buttonTitle, String message, String id, String className) {
+ private void disabledButton(final TagProcessor tagProcessor, final String buttonTitle, String message, String id, String className) {
if (className == null) {
className = "access";
}
- request.appendHtml("<div id=\"" + id + "\" class=\"" + className + " disabled-form\">");
- request.appendHtml("<div class=\"button disabled\" title=\"");
- request.appendAsHtmlEncoded(message);
- request.appendHtml("\" >" + buttonTitle);
- request.appendHtml("</div>");
- request.appendHtml("</div>");
+ tagProcessor.appendHtml("<div id=\"" + id + "\" class=\"" + className + " disabled-form\">");
+ tagProcessor.appendHtml("<div class=\"button disabled\" title=\"");
+ tagProcessor.appendAsHtmlEncoded(message);
+ tagProcessor.appendHtml("\" >" + buttonTitle);
+ tagProcessor.appendHtml("</div>");
+ tagProcessor.appendHtml("</div>");
}
public static void write(
- final Request request,
+ final TagProcessor tagProcessor,
final ObjectAdapter object,
final ObjectAction action,
final String[] parameters,
@@ -156,7 +157,7 @@ public class ActionButton extends AbstractElementProcessor {
final String resultOverride,
final String idName,
final String className) {
- final RequestContext context = request.getContext();
+ final Request context = tagProcessor.getContext();
buttonTitle = buttonTitle != null ? buttonTitle : action.getName();
@@ -183,48 +184,48 @@ public class ActionButton extends AbstractElementProcessor {
final String idSegment = idName == null ? "" : ("id=\"" + idName + "\" ");
final String classSegment = "class=\"" + (className == null ? "action in-line" : className) + "\"";
- request.appendHtml("\n<form " + idSegment + classSegment + " action=\"action.app\" method=\"post\">\n");
+ tagProcessor.appendHtml("\n<form " + idSegment + classSegment + " action=\"action.app\" method=\"post\">\n");
if (objectId == null) {
- request.appendHtml(" <input type=\"hidden\" name=\"" + "_" + OBJECT + "\" value=\"" + context.getVariable(RequestContext.RESULT) + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"" + "_" + OBJECT + "\" value=\"" + context.getVariable(Names.RESULT) + "\" />\n");
} else {
- request.appendHtml(" <input type=\"hidden\" name=\"" + "_" + OBJECT + "\" value=\"" + objectId + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"" + "_" + OBJECT + "\" value=\"" + objectId + "\" />\n");
}
- request.appendHtml(" <input type=\"hidden\" name=\"" + "_" + VERSION + "\" value=\"" + version + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"" + "_" + VERSION + "\" value=\"" + version + "\" />\n");
if (scope != null) {
- request.appendHtml(" <input type=\"hidden\" name=\"" + "_" + SCOPE + "\" value=\"" + scope + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"" + "_" + SCOPE + "\" value=\"" + scope + "\" />\n");
}
- request.appendHtml(" <input type=\"hidden\" name=\"" + "_" + METHOD + "\" value=\"" + action.getId() + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"" + "_" + METHOD + "\" value=\"" + action.getId() + "\" />\n");
if (forwardResultTo != null) {
forwardResultTo = context.fullFilePath(forwardResultTo);
- request.appendHtml(" <input type=\"hidden\" name=\"" + "_" + VIEW + "\" value=\"" + forwardResultTo + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"" + "_" + VIEW + "\" value=\"" + forwardResultTo + "\" />\n");
}
if (forwardErrorTo == null) {
- forwardErrorTo = request.getContext().getResourceFile();
+ forwardErrorTo = tagProcessor.getContext().getResourceFile();
}
forwardErrorTo = context.fullFilePath(forwardErrorTo);
- request.appendHtml(" <input type=\"hidden\" name=\"" + "_" + ERROR + "\" value=\"" + forwardErrorTo + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"" + "_" + ERROR + "\" value=\"" + forwardErrorTo + "\" />\n");
if (forwardVoidTo == null) {
- forwardVoidTo = request.getContext().getResourceFile();
+ forwardVoidTo = tagProcessor.getContext().getResourceFile();
}
forwardVoidTo = context.fullFilePath(forwardVoidTo);
- request.appendHtml(" <input type=\"hidden\" name=\"" + "_" + VOID + "\" value=\"" + forwardVoidTo + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"" + "_" + VOID + "\" value=\"" + forwardVoidTo + "\" />\n");
if (variable != null) {
- request.appendHtml(" <input type=\"hidden\" name=\"" + "_" + RESULT_NAME + "\" value=\"" + variable + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"" + "_" + RESULT_NAME + "\" value=\"" + variable + "\" />\n");
}
if (resultOverride != null) {
- request.appendHtml(" <input type=\"hidden\" name=\"" + "_" + RESULT_OVERRIDE + "\" value=\"" + resultOverride + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"" + "_" + RESULT_OVERRIDE + "\" value=\"" + resultOverride + "\" />\n");
}
if (completionMessage != null) {
- request.appendHtml(" <input type=\"hidden\" name=\"" + "_" + MESSAGE + "\" value=\"" + completionMessage + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"" + "_" + MESSAGE + "\" value=\"" + completionMessage + "\" />\n");
}
for (int i = 0; i < parameters.length; i++) {
- request.appendHtml(" <input type=\"hidden\" name=\"param" + (i + 1) + "\" value=\"" + parameters[i] + "\" />\n");
+ tagProcessor.appendHtml(" <input type=\"hidden\" name=\"param" + (i + 1) + "\" value=\"" + parameters[i] + "\" />\n");
}
- request.appendHtml(request.getContext().interactionFields());
- request.appendHtml(" <input class=\"button\" type=\"submit\" value=\"" + buttonTitle + "\" name=\"execute\" title=\"" + action.getDescription() + "\" />");
- HelpLink.append(request, action.getDescription(), action.getHelp());
- request.appendHtml("\n</form>\n");
+ tagProcessor.appendHtml(tagProcessor.getContext().interactionFields());
+ tagProcessor.appendHtml(" <input class=\"button\" type=\"submit\" value=\"" + buttonTitle + "\" name=\"execute\" title=\"" + action.getDescription() + "\" />");
+ HelpLink.append(tagProcessor, action.getDescription(), action.getHelp());
+ tagProcessor.appendHtml("\n</form>\n");
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/49518c89/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionContent.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionContent.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionContent.java
index 2466726..5d30f0d 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionContent.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionContent.java
@@ -28,9 +28,9 @@ import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.viewer.scimpi.dispatcher.BlockContent;
-import org.apache.isis.viewer.scimpi.dispatcher.ScimpiException;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request;
+import org.apache.isis.viewer.scimpi.ScimpiException;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.BlockContent;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor;
public class ActionContent implements BlockContent {
private final ObjectAction action;
@@ -55,7 +55,7 @@ public class ActionContent implements BlockContent {
parameters[index] = value;
}
- public ObjectAdapter[] getParameters(final Request request) {
+ public ObjectAdapter[] getParameters(final TagProcessor tagProcessor) {
final ObjectAdapter[] params = new ObjectAdapter[parameters.length];
final List<ObjectActionParameter> pars = action.getParameters();
for (int i = 0; i < parameters.length; i++) {
@@ -65,7 +65,7 @@ public class ActionContent implements BlockContent {
Localization localization = IsisContext.getLocalization();
params[i] = facet.parseTextEntry(null, parameters[i], localization);
} else {
- params[i] = request.getContext().getMappedObject(parameters[i]);
+ params[i] = tagProcessor.getContext().getMappedObject(parameters[i]);
}
}
return params;
http://git-wip-us.apache.org/repos/asf/isis/blob/49518c89/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionForm.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionForm.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionForm.java
index 5f47985..9f1d682 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionForm.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionForm.java
@@ -26,20 +26,21 @@ import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
-import org.apache.isis.viewer.scimpi.dispatcher.AbstractElementProcessor;
-import org.apache.isis.viewer.scimpi.dispatcher.ScimpiException;
+import org.apache.isis.viewer.scimpi.Names;
+import org.apache.isis.viewer.scimpi.ScimpiException;
import org.apache.isis.viewer.scimpi.dispatcher.action.ActionAction;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext.Scope;
-import org.apache.isis.viewer.scimpi.dispatcher.edit.FieldEditState;
-import org.apache.isis.viewer.scimpi.dispatcher.edit.FormState;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request.Scope;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor;
+import org.apache.isis.viewer.scimpi.dispatcher.structure.FieldEditState;
+import org.apache.isis.viewer.scimpi.dispatcher.structure.FormState;
import org.apache.isis.viewer.scimpi.dispatcher.util.MethodsUtils;
-import org.apache.isis.viewer.scimpi.dispatcher.view.edit.FieldFactory;
-import org.apache.isis.viewer.scimpi.dispatcher.view.edit.FormFieldBlock;
+import org.apache.isis.viewer.scimpi.dispatcher.view.AbstractElementProcessor;
import org.apache.isis.viewer.scimpi.dispatcher.view.form.HiddenInputField;
import org.apache.isis.viewer.scimpi.dispatcher.view.form.HtmlFormBuilder;
import org.apache.isis.viewer.scimpi.dispatcher.view.form.InputField;
+import org.apache.isis.viewer.scimpi.dispatcher.view.widget.FieldFactory;
+import org.apache.isis.viewer.scimpi.dispatcher.view.widget.FormFieldBlock;
public class ActionForm extends AbstractElementProcessor {
@@ -47,37 +48,37 @@ public class ActionForm extends AbstractElementProcessor {
private final static Where where = Where.OBJECT_FORMS;
@Override
- public void process(final Request request) {
+ public void process(final TagProcessor tagProcessor) {
final CreateFormParameter parameters = new CreateFormParameter();
- parameters.objectId = request.getOptionalProperty(OBJECT);
- parameters.methodName = request.getRequiredProperty(METHOD);
- parameters.forwardResultTo = request.getOptionalProperty(VIEW);
- parameters.forwardVoidTo = request.getOptionalProperty(VOID);
- parameters.forwardErrorTo = request.getOptionalProperty(ERROR);
- parameters.cancelTo = request.getOptionalProperty(CANCEL_TO);
- parameters.showIcon = request.isRequested(SHOW_ICON, showIconByDefault());
- parameters.buttonTitle = request.getOptionalProperty(BUTTON_TITLE);
- parameters.formTitle = request.getOptionalProperty(FORM_TITLE);
- parameters.labelDelimiter = request.getOptionalProperty(LABEL_DELIMITER, ":");
- parameters.formId = request.getOptionalProperty(FORM_ID, request.nextFormId());
- parameters.resultName = request.getOptionalProperty(RESULT_NAME);
- parameters.resultOverride = request.getOptionalProperty(RESULT_OVERRIDE);
- parameters.scope = request.getOptionalProperty(SCOPE);
- parameters.className = request.getOptionalProperty(CLASS, "action full");
- parameters.showMessage = request.isRequested(SHOW_MESSAGE, false);
- parameters.completionMessage = request.getOptionalProperty(MESSAGE);
- parameters.id = request.getOptionalProperty(ID, parameters.methodName);
- createForm(request, parameters);
+ parameters.objectId = tagProcessor.getOptionalProperty(OBJECT);
+ parameters.methodName = tagProcessor.getRequiredProperty(METHOD);
+ parameters.forwardResultTo = tagProcessor.getOptionalProperty(VIEW);
+ parameters.forwardVoidTo = tagProcessor.getOptionalProperty(VOID);
+ parameters.forwardErrorTo = tagProcessor.getOptionalProperty(ERROR);
+ parameters.cancelTo = tagProcessor.getOptionalProperty(CANCEL_TO);
+ parameters.showIcon = tagProcessor.isRequested(SHOW_ICON, showIconByDefault());
+ parameters.buttonTitle = tagProcessor.getOptionalProperty(BUTTON_TITLE);
+ parameters.formTitle = tagProcessor.getOptionalProperty(FORM_TITLE);
+ parameters.labelDelimiter = tagProcessor.getOptionalProperty(LABEL_DELIMITER, ":");
+ parameters.formId = tagProcessor.getOptionalProperty(FORM_ID, tagProcessor.nextFormId());
+ parameters.resultName = tagProcessor.getOptionalProperty(RESULT_NAME);
+ parameters.resultOverride = tagProcessor.getOptionalProperty(RESULT_OVERRIDE);
+ parameters.scope = tagProcessor.getOptionalProperty(SCOPE);
+ parameters.className = tagProcessor.getOptionalProperty(CLASS, "action full");
+ parameters.showMessage = tagProcessor.isRequested(SHOW_MESSAGE, false);
+ parameters.completionMessage = tagProcessor.getOptionalProperty(MESSAGE);
+ parameters.id = tagProcessor.getOptionalProperty(ID, parameters.methodName);
+ createForm(tagProcessor, parameters);
}
- public static void createForm(final Request request, final CreateFormParameter parameterObject) {
- createForm(request, parameterObject, false);
+ public static void createForm(final TagProcessor tagProcessor, final CreateFormParameter parameterObject) {
+ createForm(tagProcessor, parameterObject, false);
}
- protected static void createForm(final Request request, final CreateFormParameter parameterObject, final boolean withoutProcessing) {
- final RequestContext context = request.getContext();
+ protected static void createForm(final TagProcessor tagProcessor, final CreateFormParameter parameterObject, final boolean withoutProcessing) {
+ final Request context = tagProcessor.getContext();
final ObjectAdapter object = MethodsUtils.findObject(context, parameterObject.objectId);
- final String version = request.getContext().mapVersion(object);
+ final String version = tagProcessor.getContext().mapVersion(object);
final ObjectAction action = MethodsUtils.findAction(object, parameterObject.methodName);
// TODO how do we distinguish between overloaded methods?
@@ -89,17 +90,17 @@ public class ActionForm extends AbstractElementProcessor {
final String notUsable = MethodsUtils.isUsable(object, action, where);
if (notUsable != null) {
if (!withoutProcessing) {
- request.skipUntilClose();
+ tagProcessor.skipUntilClose();
}
- request.appendHtml("<div class=\"" + parameterObject.className + "-message\" >");
- request.appendAsHtmlEncoded(notUsable);
- request.appendHtml("</div>");
+ tagProcessor.appendHtml("<div class=\"" + parameterObject.className + "-message\" >");
+ tagProcessor.appendAsHtmlEncoded(notUsable);
+ tagProcessor.appendHtml("</div>");
return;
}
}
if (!MethodsUtils.isVisibleAndUsable(object, action, where)) {
if (!withoutProcessing) {
- request.skipUntilClose();
+ tagProcessor.skipUntilClose();
}
return;
}
@@ -113,7 +114,7 @@ public class ActionForm extends AbstractElementProcessor {
parameterObject.forwardResultTo == null ? null : new HiddenInputField("_" + VIEW, context.fullFilePath(parameterObject.forwardResultTo)), new HiddenInputField("_" + VOID, voidView), new HiddenInputField("_" + ERROR, errorView),
parameterObject.completionMessage == null ? null : new HiddenInputField("_" + MESSAGE, parameterObject.completionMessage), parameterObject.scope == null ? null : new HiddenInputField("_" + SCOPE, parameterObject.scope),
parameterObject.resultOverride == null ? null : new HiddenInputField("_" + RESULT_OVERRIDE, parameterObject.resultOverride), parameterObject.resultName == null ? null : new HiddenInputField("_" + RESULT_NAME, parameterObject.resultName),
- parameterObject.resultName == null ? null : new HiddenInputField(RequestContext.RESULT, (String) request.getContext().getVariable(RequestContext.RESULT)) };
+ parameterObject.resultName == null ? null : new HiddenInputField(Names.RESULT, (String) tagProcessor.getContext().getVariable(Names.RESULT)) };
// TODO when the block contains a selector tag it doesn't disable it if
// the field cannot be edited!!!
@@ -125,9 +126,9 @@ public class ActionForm extends AbstractElementProcessor {
return param.isOptional();
}
};
- request.setBlockContent(containedBlock);
+ tagProcessor.setBlockContent(containedBlock);
if (!withoutProcessing) {
- request.processUtilCloseTag();
+ tagProcessor.processUtilCloseTag();
}
final FormState entryState = (FormState) context.getVariable(ENTRY_FIELDS);
@@ -160,10 +161,10 @@ public class ActionForm extends AbstractElementProcessor {
buttonTitle = "Ok";
}
- HtmlFormBuilder.createForm(request, ActionAction.ACTION + ".app", hiddenFields, formFields, parameterObject.className,
+ HtmlFormBuilder.createForm(tagProcessor, ActionAction.ACTION + ".app", hiddenFields, formFields, parameterObject.className,
parameterObject.id, formTitle, parameterObject.labelDelimiter, action.getDescription(), action.getHelp(), buttonTitle, errors, parameterObject.cancelTo);
- request.popBlockContent();
+ tagProcessor.popBlockContent();
}
private static InputField[] createFields(final ObjectAction action, final ObjectAdapter object) {
@@ -175,7 +176,7 @@ public class ActionForm extends AbstractElementProcessor {
return fields;
}
- private static void initializeFields(final RequestContext context, final ObjectAdapter object, final ObjectAction action, final InputField[] fields) {
+ private static void initializeFields(final Request context, final ObjectAdapter object, final ObjectAction action, final InputField[] fields) {
final List<ObjectActionParameter> parameters = action.getParameters();
for (int i = 0; i < fields.length; i++) {
final InputField field = fields[i];
@@ -199,7 +200,7 @@ public class ActionForm extends AbstractElementProcessor {
*
* @param showIcon
*/
- private static void setDefaults(final RequestContext context, final ObjectAdapter object, final ObjectAction action, final InputField[] fields, final FormState entryState, final boolean showIcon) {
+ private static void setDefaults(final Request context, final ObjectAdapter object, final ObjectAction action, final InputField[] fields, final FormState entryState, final boolean showIcon) {
final ObjectAdapter[] defaultValues = action.getDefaults(object);
if (defaultValues == null) {
return;
@@ -225,7 +226,7 @@ public class ActionForm extends AbstractElementProcessor {
}
}
- private static void copyEntryState(final RequestContext context, final ObjectAdapter object, final ObjectAction action, final InputField[] fields, final FormState entryState) {
+ private static void copyEntryState(final Request context, final ObjectAdapter object, final ObjectAction action, final InputField[] fields, final FormState entryState) {
for (final InputField field : fields) {
final FieldEditState fieldState = entryState.getField(field.getName());
@@ -241,7 +242,7 @@ public class ActionForm extends AbstractElementProcessor {
}
}
- private static void overrideWithHtml(final RequestContext context, final FormFieldBlock containedBlock, final InputField[] formFields) {
+ private static void overrideWithHtml(final Request context, final FormFieldBlock containedBlock, final InputField[] formFields) {
for (int i = 0; i < formFields.length; i++) {
final String id = ActionAction.parameterName(i);
if (containedBlock.hasContent(id)) {
http://git-wip-us.apache.org/repos/asf/isis/blob/49518c89/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionLink.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionLink.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionLink.java
index 0f09e19..3a50cda 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionLink.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionLink.java
@@ -24,12 +24,12 @@ import java.net.URLEncoder;
import org.apache.isis.applib.annotation.Where;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
-import org.apache.isis.viewer.scimpi.dispatcher.AbstractElementProcessor;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext.Scope;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request.Scope;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor;
import org.apache.isis.viewer.scimpi.dispatcher.util.MethodsUtils;
-import org.apache.isis.viewer.scimpi.dispatcher.view.HelpLink;
+import org.apache.isis.viewer.scimpi.dispatcher.view.AbstractElementProcessor;
+import org.apache.isis.viewer.scimpi.dispatcher.view.other.HelpLink;
public class ActionLink extends AbstractElementProcessor {
@@ -37,43 +37,43 @@ public class ActionLink extends AbstractElementProcessor {
private final Where where = Where.OBJECT_FORMS;
@Override
- public void process(final Request request) {
- String objectId = request.getOptionalProperty(OBJECT);
- final String method = request.getOptionalProperty(METHOD);
- final String forwardResultTo = request.getOptionalProperty(VIEW);
- final String forwardVoidTo = request.getOptionalProperty(VOID);
- String resultOverride = request.getOptionalProperty(RESULT_OVERRIDE);
+ public void process(final TagProcessor tagProcessor) {
+ String objectId = tagProcessor.getOptionalProperty(OBJECT);
+ final String method = tagProcessor.getOptionalProperty(METHOD);
+ final String forwardResultTo = tagProcessor.getOptionalProperty(VIEW);
+ final String forwardVoidTo = tagProcessor.getOptionalProperty(VOID);
+ String resultOverride = tagProcessor.getOptionalProperty(RESULT_OVERRIDE);
- final String resultName = request.getOptionalProperty(RESULT_NAME);
+ final String resultName = tagProcessor.getOptionalProperty(RESULT_NAME);
final String resultNameSegment = resultName == null ? "" : "&" + RESULT_NAME + "=" + resultName;
- final String scope = request.getOptionalProperty(SCOPE);
+ final String scope = tagProcessor.getOptionalProperty(SCOPE);
final String scopeSegment = scope == null ? "" : "&" + SCOPE + "=" + scope;
- final String confirm = request.getOptionalProperty(CONFIRM);
- final String completionMessage = request.getOptionalProperty(MESSAGE);
+ final String confirm = tagProcessor.getOptionalProperty(CONFIRM);
+ final String completionMessage = tagProcessor.getOptionalProperty(MESSAGE);
// TODO need a mechanism for globally dealing with encoding; then use
// the new encode method
final String confirmSegment = confirm == null ? "" : "&" + "_" + CONFIRM + "=" + URLEncoder.encode(confirm);
final String messageSegment = completionMessage == null ? "" : "&" + "_" + MESSAGE + "=" + URLEncoder.encode(completionMessage);
- final RequestContext context = request.getContext();
+ final Request context = tagProcessor.getContext();
final ObjectAdapter object = MethodsUtils.findObject(context, objectId);
final String version = context.mapVersion(object);
final ObjectAction action = MethodsUtils.findAction(object, method);
- objectId = request.getContext().mapObject(object, Scope.REQUEST);
+ objectId = tagProcessor.getContext().mapObject(object, Scope.REQUEST);
final ActionContent parameterBlock = new ActionContent(action);
- request.setBlockContent(parameterBlock);
- request.pushNewBuffer();
- request.processUtilCloseTag();
- final String text = request.popBuffer();
+ tagProcessor.setBlockContent(parameterBlock);
+ tagProcessor.pushNewBuffer();
+ tagProcessor.processUtilCloseTag();
+ final String text = tagProcessor.popBuffer();
final String[] parameters = parameterBlock.getParameters();
final String target;
if (action.isContributed()) {
System.arraycopy(parameters, 0, parameters, 1, parameters.length - 1);
- parameters[0] = request.getContext().mapObject(object, Scope.REQUEST);
- target = request.getContext().mapObject(action.realTarget(object), Scope.REQUEST);
+ parameters[0] = tagProcessor.getContext().mapObject(object, Scope.REQUEST);
+ target = tagProcessor.getContext().mapObject(action.realTarget(object), Scope.REQUEST);
if (!action.hasReturn() && resultOverride == null) {
resultOverride = parameters[0];
}
@@ -82,14 +82,14 @@ public class ActionLink extends AbstractElementProcessor {
}
if (MethodsUtils.isVisibleAndUsable(object, action, where)) {
- writeLink(request, target, version, method, forwardResultTo, forwardVoidTo, resultNameSegment, resultOverride, scopeSegment,
+ writeLink(tagProcessor, target, version, method, forwardResultTo, forwardVoidTo, resultNameSegment, resultOverride, scopeSegment,
confirmSegment, messageSegment, context, action, parameters, text);
}
- request.popBlockContent();
+ tagProcessor.popBlockContent();
}
public static void writeLink(
- final Request request,
+ final TagProcessor tagProcessor,
final String objectId,
final String version,
final String method,
@@ -100,7 +100,7 @@ public class ActionLink extends AbstractElementProcessor {
final String scopeSegment,
final String confirmSegment,
final String messageSegment,
- final RequestContext context,
+ final Request context,
final ObjectAction action,
final String[] parameters,
String text) {
@@ -116,12 +116,12 @@ public class ActionLink extends AbstractElementProcessor {
final String resultOverrideSegment = resultOverride == null ? "" : "&" + "_" + RESULT_OVERRIDE + "=" + resultOverride;
final String voidView = context.fullFilePath(forwardVoidTo == null ? context.getResourceFile() : forwardVoidTo);
final String forwardVoidSegment = "&" + "_" + VOID + "=" + voidView;
- request.appendHtml("<a href=\"action.app?" + "_" + OBJECT + "=" + objectId + "&" + "_" + VERSION + "=" + version
+ tagProcessor.appendHtml("<a href=\"action.app?" + "_" + OBJECT + "=" + objectId + "&" + "_" + VERSION + "=" + version
+ "&" + "_" + METHOD + "=" + method + resultOverrideSegment + forwardResultSegment + forwardVoidSegment + resultNameSegment
+ parameterSegment + scopeSegment + confirmSegment + messageSegment + interactionParamters + "\">");
- request.appendHtml(text);
- request.appendHtml("</a>");
- HelpLink.append(request, action.getDescription(), action.getHelp());
+ tagProcessor.appendHtml(text);
+ tagProcessor.appendHtml("</a>");
+ HelpLink.append(tagProcessor, action.getDescription(), action.getHelp());
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/49518c89/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Methods.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Methods.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Methods.java
index 37e5ba4..7c334fb 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Methods.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Methods.java
@@ -28,11 +28,11 @@ import org.apache.isis.core.metamodel.spec.ObjectActionSet;
import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
import org.apache.isis.core.metamodel.spec.feature.ObjectActionContainer.Contributed;
import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.viewer.scimpi.dispatcher.AbstractElementProcessor;
-import org.apache.isis.viewer.scimpi.dispatcher.Dispatcher;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext.Scope;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request;
+import org.apache.isis.viewer.scimpi.Names;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request.Scope;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor;
import org.apache.isis.viewer.scimpi.dispatcher.util.MethodsUtils;
+import org.apache.isis.viewer.scimpi.dispatcher.view.AbstractElementProcessor;
import org.apache.isis.viewer.scimpi.dispatcher.view.field.InclusionList;
public class Methods extends AbstractElementProcessor {
@@ -45,33 +45,33 @@ public class Methods extends AbstractElementProcessor {
private final static Where where = Where.ANYWHERE;
@Override
- public void process(final Request request) {
- String objectId = request.getOptionalProperty(OBJECT);
- final String view = request.getOptionalProperty(VIEW, "_generic_action." + Dispatcher.EXTENSION);
- final String cancelTo = request.getOptionalProperty(CANCEL_TO);
- final boolean showForms = request.isRequested(FORMS, false);
- final ObjectAdapter object = MethodsUtils.findObject(request.getContext(), objectId);
+ public void process(final TagProcessor tagProcessor) {
+ String objectId = tagProcessor.getOptionalProperty(OBJECT);
+ final String view = tagProcessor.getOptionalProperty(VIEW, "_generic_action." + Names.EXTENSION);
+ // final String cancelTo = tagProcessor.getOptionalProperty(CANCEL_TO);
+ final boolean showForms = tagProcessor.isRequested(FORMS, false);
+ final ObjectAdapter object = MethodsUtils.findObject(tagProcessor.getContext(), objectId);
if (objectId == null) {
- objectId = request.getContext().mapObject(object, null);
+ objectId = tagProcessor.getContext().mapObject(object, null);
}
final InclusionList inclusionList = new InclusionList();
- request.setBlockContent(inclusionList);
- request.processUtilCloseTag();
+ tagProcessor.setBlockContent(inclusionList);
+ tagProcessor.processUtilCloseTag();
- request.appendHtml("<div class=\"actions\">");
+ tagProcessor.appendHtml("<div class=\"actions\">");
if (inclusionList.includes("edit") && !object.getSpecification().isService()) {
- request.appendHtml("<div class=\"action\">");
- request.appendHtml("<a class=\"button\" href=\"_generic_edit." + Dispatcher.EXTENSION + "?_result=" + objectId + "\">Edit...</a>");
- request.appendHtml("</div>");
+ tagProcessor.appendHtml("<div class=\"action\">");
+ tagProcessor.appendHtml("<a class=\"button\" href=\"_generic_edit." + Names.EXTENSION + "?_result=" + objectId + "\">Edit...</a>");
+ tagProcessor.appendHtml("</div>");
}
- writeMethods(request, objectId, object, showForms, inclusionList, view, "_generic.shtml?_result=" + objectId);
- request.popBlockContent();
- request.appendHtml("</div>");
+ writeMethods(tagProcessor, objectId, object, showForms, inclusionList, view, "_generic.shtml?_result=" + objectId);
+ tagProcessor.popBlockContent();
+ tagProcessor.appendHtml("</div>");
}
public static void writeMethods(
- final Request request,
+ final TagProcessor tagProcessor,
final String objectId,
final ObjectAdapter adapter,
final boolean showForms,
@@ -79,21 +79,21 @@ public class Methods extends AbstractElementProcessor {
final String view,
final String cancelTo) {
List<ObjectAction> actions = adapter.getSpecification().getObjectActions(ActionType.USER, Contributed.INCLUDED);
- writeMethods(request, adapter, actions, objectId, showForms, inclusionList, view, cancelTo);
+ writeMethods(tagProcessor, adapter, actions, objectId, showForms, inclusionList, view, cancelTo);
// TODO determine if system is set up to display exploration methods
if (true) {
actions = adapter.getSpecification().getObjectActions(ActionType.EXPLORATION, Contributed.INCLUDED);
- writeMethods(request, adapter, actions, objectId, showForms, inclusionList, view, cancelTo);
+ writeMethods(tagProcessor, adapter, actions, objectId, showForms, inclusionList, view, cancelTo);
}
// TODO determine if system is set up to display debug methods
if (true) {
actions = adapter.getSpecification().getObjectActions(ActionType.DEBUG, Contributed.INCLUDED);
- writeMethods(request, adapter, actions, objectId, showForms, inclusionList, view, cancelTo);
+ writeMethods(tagProcessor, adapter, actions, objectId, showForms, inclusionList, view, cancelTo);
}
}
private static void writeMethods(
- final Request request,
+ final TagProcessor tagProcessor,
final ObjectAdapter adapter,
List<ObjectAction> actions,
final String objectId,
@@ -105,32 +105,32 @@ public class Methods extends AbstractElementProcessor {
for (int j = 0; j < actions.size(); j++) {
final ObjectAction action = actions.get(j);
if (action instanceof ObjectActionSet) {
- request.appendHtml("<div class=\"actions\">");
- writeMethods(request, adapter, action.getActions(), objectId, showForms, inclusionList, view, cancelTo);
- request.appendHtml("</div>");
+ tagProcessor.appendHtml("<div class=\"actions\">");
+ writeMethods(tagProcessor, adapter, action.getActions(), objectId, showForms, inclusionList, view, cancelTo);
+ tagProcessor.appendHtml("</div>");
} else if (action.isContributed()) {
if (action.getParameterCount() == 1 && adapter.getSpecification().isOfType(action.getParameters().get(0).getSpecification())) {
if (objectId != null) {
- final ObjectAdapter target = request.getContext().getMappedObject(objectId);
+ final ObjectAdapter target = tagProcessor.getContext().getMappedObject(objectId);
final ObjectAdapter realTarget = action.realTarget(target);
- final String realTargetId = request.getContext().mapObject(realTarget, Scope.INTERACTION);
- writeMethod(request, adapter, new String[] { objectId }, action, realTargetId, showForms, view, cancelTo);
+ final String realTargetId = tagProcessor.getContext().mapObject(realTarget, Scope.INTERACTION);
+ writeMethod(tagProcessor, adapter, new String[] { objectId }, action, realTargetId, showForms, view, cancelTo);
} else {
- request.appendHtml("<div class=\"action\">");
- request.appendAsHtmlEncoded(action.getName());
- request.appendHtml("???</div>");
+ tagProcessor.appendHtml("<div class=\"action\">");
+ tagProcessor.appendAsHtmlEncoded(action.getName());
+ tagProcessor.appendHtml("???</div>");
}
} else if (!adapter.getSpecification().isService()) {
- writeMethod(request, adapter, new String[0], action, objectId, showForms, view, cancelTo);
+ writeMethod(tagProcessor, adapter, new String[0], action, objectId, showForms, view, cancelTo);
}
} else {
- writeMethod(request, adapter, new String[0], action, objectId, showForms, view, cancelTo);
+ writeMethod(tagProcessor, adapter, new String[0], action, objectId, showForms, view, cancelTo);
}
}
}
private static void writeMethod(
- final Request request,
+ final TagProcessor tagProcessor,
final ObjectAdapter adapter,
final String[] parameters,
final ObjectAction action,
@@ -142,11 +142,11 @@ public class Methods extends AbstractElementProcessor {
// action.isVisible(IsisContext.getSession(), adapter))
// {
if (action.isVisible(IsisContext.getAuthenticationSession(), adapter, where).isAllowed()) {
- request.appendHtml("<div class=\"action\">");
+ tagProcessor.appendHtml("<div class=\"action\">");
if (IsisContext.getSession() == null) {
- request.appendHtml("<span class=\"disabled\" title=\"no user logged in\">");
- request.appendAsHtmlEncoded(action.getName());
- request.appendHtml("</span>");
+ tagProcessor.appendHtml("<span class=\"disabled\" title=\"no user logged in\">");
+ tagProcessor.appendAsHtmlEncoded(action.getName());
+ tagProcessor.appendHtml("</span>");
/*
* } else if (action.isUsable(IsisContext.getSession(),
* null).isVetoed()) {
@@ -155,33 +155,33 @@ public class Methods extends AbstractElementProcessor {
* "\">"); request.appendHtml(action.getName());
* request.appendHtml("</span>");
*/} else if (action.isUsable(IsisContext.getAuthenticationSession(), adapter, where).isVetoed()) {
- request.appendHtml("<span class=\"disabled\" title=\"" + action.isUsable(IsisContext.getAuthenticationSession(), adapter, where).getReason() + "\">");
- request.appendAsHtmlEncoded(action.getName());
- request.appendHtml("</span>");
+ tagProcessor.appendHtml("<span class=\"disabled\" title=\"" + action.isUsable(IsisContext.getAuthenticationSession(), adapter, where).getReason() + "\">");
+ tagProcessor.appendAsHtmlEncoded(action.getName());
+ tagProcessor.appendHtml("</span>");
} else {
- final String version = request.getContext().mapVersion(adapter);
+ final String version = tagProcessor.getContext().mapVersion(adapter);
if (action.getParameterCount() == 0 || (action.isContributed() && action.getParameterCount() == 1)) {
- ActionButton.write(request, adapter, action, parameters, objectId, version, "_generic." + Dispatcher.EXTENSION, null, null, null, null, null, null, null, null, null);
+ ActionButton.write(tagProcessor, adapter, action, parameters, objectId, version, "_generic." + Names.EXTENSION, null, null, null, null, null, null, null, null, null);
} else if (showForms) {
final CreateFormParameter params = new CreateFormParameter();
params.objectId = objectId;
params.methodName = action.getId();
- params.forwardResultTo = "_generic." + Dispatcher.EXTENSION;
+ params.forwardResultTo = "_generic." + Names.EXTENSION;
params.buttonTitle = "OK";
params.formTitle = action.getName();
- ActionForm.createForm(request, params, true);
+ ActionForm.createForm(tagProcessor, params, true);
} else {
- request.appendHtml("<a class=\"button\" href=\"" + view + "?_result=" + objectId + "&_" + VERSION + "=" + version + "&_" + METHOD + "=" + action.getId());
+ tagProcessor.appendHtml("<a class=\"button\" href=\"" + view + "?_result=" + objectId + "&_" + VERSION + "=" + version + "&_" + METHOD + "=" + action.getId());
if (cancelTo != null) {
- request.appendHtml("&_cancel-to=");
- request.appendAsHtmlEncoded("cancel-to=\"" + cancelTo + "\"");
+ tagProcessor.appendHtml("&_cancel-to=");
+ tagProcessor.appendAsHtmlEncoded("cancel-to=\"" + cancelTo + "\"");
}
- request.appendHtml("\" title=\"" + action.getDescription() + "\">");
- request.appendAsHtmlEncoded(action.getName() + "...");
- request.appendHtml("</a>");
+ tagProcessor.appendHtml("\" title=\"" + action.getDescription() + "\">");
+ tagProcessor.appendAsHtmlEncoded(action.getName() + "...");
+ tagProcessor.appendHtml("</a>");
}
}
- request.appendHtml("</div>");
+ tagProcessor.appendHtml("</div>");
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/49518c89/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Parameter.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Parameter.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Parameter.java
index 69be5c5..cbf7464 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Parameter.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Parameter.java
@@ -19,22 +19,22 @@
package org.apache.isis.viewer.scimpi.dispatcher.view.action;
-import org.apache.isis.viewer.scimpi.dispatcher.AbstractElementProcessor;
-import org.apache.isis.viewer.scimpi.dispatcher.BlockContent;
import org.apache.isis.viewer.scimpi.dispatcher.TagOrderException;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.BlockContent;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor;
+import org.apache.isis.viewer.scimpi.dispatcher.view.AbstractElementProcessor;
public class Parameter extends AbstractElementProcessor {
@Override
- public void process(final Request request) {
- final BlockContent blockContent = request.getBlockContent();
+ public void process(final TagProcessor tagProcessor) {
+ final BlockContent blockContent = tagProcessor.getBlockContent();
if (!(blockContent instanceof ActionContent)) {
- throw new TagOrderException(request);
+ throw new TagOrderException(tagProcessor);
}
- final String field = request.getOptionalProperty(PARAMETER_NUMBER);
- final String value = request.getRequiredProperty(VALUE);
+ final String field = tagProcessor.getOptionalProperty(PARAMETER_NUMBER);
+ final String value = tagProcessor.getRequiredProperty(VALUE);
final ActionContent block = (ActionContent) blockContent;
block.setParameter(field, value);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/49518c89/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/RunAction.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/RunAction.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/RunAction.java
index 6aa2138..00d617c 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/RunAction.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/RunAction.java
@@ -25,12 +25,12 @@ import org.apache.isis.applib.annotation.Where;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
-import org.apache.isis.viewer.scimpi.dispatcher.AbstractElementProcessor;
-import org.apache.isis.viewer.scimpi.dispatcher.ForbiddenException;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext.Scope;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request;
+import org.apache.isis.viewer.scimpi.ForbiddenException;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request.Scope;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor;
import org.apache.isis.viewer.scimpi.dispatcher.util.MethodsUtils;
+import org.apache.isis.viewer.scimpi.dispatcher.view.AbstractElementProcessor;
public class RunAction extends AbstractElementProcessor {
@@ -42,22 +42,22 @@ public class RunAction extends AbstractElementProcessor {
private final Where where = Where.ANYWHERE;
@Override
- public void process(final Request request) {
- final RequestContext context = request.getContext();
+ public void process(final TagProcessor tagProcessor) {
+ final Request context = tagProcessor.getContext();
- final String objectId = request.getOptionalProperty(OBJECT);
+ final String objectId = tagProcessor.getOptionalProperty(OBJECT);
final ObjectAdapter object = MethodsUtils.findObject(context, objectId);
- final String methodName = request.getRequiredProperty(METHOD);
+ final String methodName = tagProcessor.getRequiredProperty(METHOD);
final ObjectAction action = MethodsUtils.findAction(object, methodName);
- final String variableName = request.getOptionalProperty(RESULT_NAME);
- final String scopeName = request.getOptionalProperty(SCOPE);
+ final String variableName = tagProcessor.getOptionalProperty(RESULT_NAME);
+ final String scopeName = tagProcessor.getOptionalProperty(SCOPE);
final ActionContent parameterBlock = new ActionContent(action);
- request.setBlockContent(parameterBlock);
- request.processUtilCloseTag();
- final ObjectAdapter[] parameters = parameterBlock.getParameters(request);
+ tagProcessor.setBlockContent(parameterBlock);
+ tagProcessor.processUtilCloseTag();
+ final ObjectAdapter[] parameters = parameterBlock.getParameters(tagProcessor);
if (!MethodsUtils.isVisibleAndUsable(object, action, where)) {
throw new ForbiddenException(action, ForbiddenException.VISIBLE_AND_USABLE);
@@ -74,9 +74,9 @@ public class RunAction extends AbstractElementProcessor {
}
}
- final Scope scope = RequestContext.scope(scopeName, Scope.REQUEST);
+ final Scope scope = Request.scope(scopeName, Scope.REQUEST);
MethodsUtils.runMethod(context, action, object, parameters, variableName, scope);
- request.popBlockContent();
+ tagProcessor.popBlockContent();
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/49518c89/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Services.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Services.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Services.java
index 2a621f1..761b849 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Services.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/Services.java
@@ -24,35 +24,35 @@ import java.util.List;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.runtime.system.context.IsisContext;
import org.apache.isis.core.runtime.system.persistence.PersistenceSession;
-import org.apache.isis.viewer.scimpi.dispatcher.AbstractElementProcessor;
-import org.apache.isis.viewer.scimpi.dispatcher.Dispatcher;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext.Scope;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request;
+import org.apache.isis.viewer.scimpi.Names;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request.Scope;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor;
+import org.apache.isis.viewer.scimpi.dispatcher.view.AbstractElementProcessor;
import org.apache.isis.viewer.scimpi.dispatcher.view.field.InclusionList;
public class Services extends AbstractElementProcessor {
@Override
- public void process(final Request request) {
- final boolean showForms = request.isRequested(FORMS, false);
- final String view = request.getOptionalProperty(VIEW, "_generic_action." + Dispatcher.EXTENSION);
- final String cancelTo = request.getOptionalProperty(CANCEL_TO);
+ public void process(final TagProcessor tagProcessor) {
+ final boolean showForms = tagProcessor.isRequested(FORMS, false);
+ final String view = tagProcessor.getOptionalProperty(VIEW, "_generic_action." + Names.EXTENSION);
+ final String cancelTo = tagProcessor.getOptionalProperty(CANCEL_TO);
final InclusionList inclusionList = new InclusionList();
- request.setBlockContent(inclusionList);
- request.processUtilCloseTag();
+ tagProcessor.setBlockContent(inclusionList);
+ tagProcessor.processUtilCloseTag();
final List<ObjectAdapter> serviceAdapters = getPersistenceSession().getServices();
for (final ObjectAdapter adapter : serviceAdapters) {
- final String serviceId = request.getContext().mapObject(adapter, Scope.REQUEST);
- request.appendHtml("<div class=\"actions\">");
- request.appendHtml("<h3>");
- request.appendAsHtmlEncoded(adapter.titleString());
- request.appendHtml("</h3>");
- Methods.writeMethods(request, serviceId, adapter, showForms, inclusionList, view, cancelTo);
- request.appendHtml("</div>");
+ final String serviceId = tagProcessor.getContext().mapObject(adapter, Scope.REQUEST);
+ tagProcessor.appendHtml("<div class=\"actions\">");
+ tagProcessor.appendHtml("<h3>");
+ tagProcessor.appendAsHtmlEncoded(adapter.titleString());
+ tagProcessor.appendHtml("</h3>");
+ Methods.writeMethods(tagProcessor, serviceId, adapter, showForms, inclusionList, view, cancelTo);
+ tagProcessor.appendHtml("</div>");
}
- request.popBlockContent();
+ tagProcessor.popBlockContent();
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/49518c89/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/collection/Collection.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/collection/Collection.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/collection/Collection.java
index 5a561b6..20e0cc9 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/collection/Collection.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/collection/Collection.java
@@ -25,24 +25,24 @@ import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionFacet;
import org.apache.isis.core.metamodel.spec.feature.ObjectAssociation;
import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.viewer.scimpi.dispatcher.AbstractElementProcessor;
-import org.apache.isis.viewer.scimpi.dispatcher.ScimpiException;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext.Scope;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request.RepeatMarker;
+import org.apache.isis.viewer.scimpi.ScimpiException;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request.Scope;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor.RepeatMarker;
+import org.apache.isis.viewer.scimpi.dispatcher.view.AbstractElementProcessor;
public class Collection extends AbstractElementProcessor {
@Override
- public void process(final Request request) {
- final RequestContext context = request.getContext();
+ public void process(final TagProcessor tagProcessor) {
+ final Request context = tagProcessor.getContext();
ObjectAdapter collection;
- final String field = request.getOptionalProperty(FIELD);
+ final String field = tagProcessor.getOptionalProperty(FIELD);
if (field != null) {
- final String id = request.getOptionalProperty(OBJECT);
+ final String id = tagProcessor.getOptionalProperty(OBJECT);
final ObjectAdapter object = context.getMappedObjectOrResult(id);
final ObjectAssociation objectField = object.getSpecification().getAssociation(field);
if (!objectField.isOneToManyAssociation()) {
@@ -51,16 +51,16 @@ public class Collection extends AbstractElementProcessor {
IsisContext.getPersistenceSession().resolveField(object, objectField);
collection = objectField.get(object);
} else {
- final String id = request.getOptionalProperty(COLLECTION);
+ final String id = tagProcessor.getOptionalProperty(COLLECTION);
collection = context.getMappedObjectOrResult(id);
}
- final RepeatMarker marker = request.createMarker();
+ final RepeatMarker marker = tagProcessor.createMarker();
- final String variable = request.getOptionalProperty(ELEMENT_NAME);
- final String scopeName = request.getOptionalProperty(SCOPE);
- final Scope scope = RequestContext.scope(scopeName, Scope.REQUEST);
- final String rowClassesList = request.getOptionalProperty(ROW_CLASSES, ODD_ROW_CLASS + "|" + EVEN_ROW_CLASS);
+ final String variable = tagProcessor.getOptionalProperty(ELEMENT_NAME);
+ final String scopeName = tagProcessor.getOptionalProperty(SCOPE);
+ final Scope scope = Request.scope(scopeName, Scope.REQUEST);
+ final String rowClassesList = tagProcessor.getOptionalProperty(ROW_CLASSES, ODD_ROW_CLASS + "|" + EVEN_ROW_CLASS);
String[] rowClasses = new String[0];
if (rowClassesList != null) {
rowClasses = rowClassesList.split("[,|/]");
@@ -68,7 +68,7 @@ public class Collection extends AbstractElementProcessor {
final CollectionFacet facet = collection.getSpecification().getFacet(CollectionFacet.class);
if (facet.size(collection) == 0) {
- request.skipUntilClose();
+ tagProcessor.skipUntilClose();
} else {
final Iterator<ObjectAdapter> iterator = facet.iterator(collection);
int row = 0;
@@ -80,7 +80,7 @@ public class Collection extends AbstractElementProcessor {
}
context.addVariable(variable, context.mapObject(element, scope), scope);
marker.repeat();
- request.processUtilCloseTag();
+ tagProcessor.processUtilCloseTag();
row++;
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/49518c89/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/debug/Debug.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/debug/Debug.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/debug/Debug.java
index c1a5562..d6754ef 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/debug/Debug.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/debug/Debug.java
@@ -28,6 +28,7 @@ import org.apache.isis.applib.filter.Filter;
import org.apache.isis.core.commons.debug.DebugBuilder;
import org.apache.isis.core.commons.debug.DebugHtmlString;
import org.apache.isis.core.commons.debug.DebugString;
+import org.apache.isis.core.commons.debug.Debuggable;
import org.apache.isis.core.commons.debug.DebuggableWithTitle;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -42,33 +43,32 @@ import org.apache.isis.core.metamodel.spec.feature.ObjectAssociation;
import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
import org.apache.isis.core.metamodel.util.Dump;
import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.viewer.scimpi.dispatcher.AbstractElementProcessor;
-import org.apache.isis.viewer.scimpi.dispatcher.Dispatcher;
-import org.apache.isis.viewer.scimpi.dispatcher.context.RequestContext;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request;
+import org.apache.isis.viewer.scimpi.dispatcher.context.Request;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor;
+import org.apache.isis.viewer.scimpi.dispatcher.view.AbstractElementProcessor;
public class Debug extends AbstractElementProcessor {
- private final Dispatcher dispatcher;
+ private final Debuggable dispatcher;
- public Debug(final Dispatcher dispatcher) {
+ public Debug(final Debuggable dispatcher) {
this.dispatcher = dispatcher;
}
@Override
- public void process(final Request request) {
- if (request.getContext().isDebugDisabled()) {
+ public void process(final TagProcessor tagProcessor) {
+ if (tagProcessor.getContext().isDebugDisabled()) {
return;
}
- final String type = request.getOptionalProperty(TYPE);
+ final String type = tagProcessor.getOptionalProperty(TYPE);
- final boolean alwaysShow = request.isRequested("force", false);
+ final boolean alwaysShow = tagProcessor.isRequested("force", false);
if (type != null) {
if (type.equals("system")) {
- displaySystem(request);
+ displaySystem(tagProcessor);
} else if (type.equals("session")) {
- displaySession(request);
+ displaySession(tagProcessor);
} else if (type.equals("test")) {
final DebugBuilder debug = new DebugHtmlString();
debug.appendTitle("Title");
@@ -106,153 +106,153 @@ public class Debug extends AbstractElementProcessor {
debug.appendln("A lot of text etc.");
debug.endSection();
- request.appendHtml(debug.toString());
+ tagProcessor.appendHtml(debug.toString());
//request.appendHtml("<pre>" + debug.toString() + "</pre>");
debug.close();
} else if (type.equals("variables")) {
- displayVariables(request);
+ displayVariables(tagProcessor);
} else if (type.equals("dispatcher")) {
- displayDispatcher(request);
+ displayDispatcher(tagProcessor);
} else if (type.equals("context")) {
- displayContext(request);
+ displayContext(tagProcessor);
} else if (type.equals("specifications")) {
- listSpecifications(request);
+ listSpecifications(tagProcessor);
} else if (type.equals("specification-for")) {
- specificationFor(request);
+ specificationFor(tagProcessor);
} else if (type.equals("specification")) {
- specification(request);
+ specification(tagProcessor);
} else if (type.equals("specification-graph")) {
- specificationGraph(request);
+ specificationGraph(tagProcessor);
} else if (type.equals("object-graph")) {
- objectGraph(request);
+ objectGraph(tagProcessor);
} else if (type.equals("object")) {
- final String value = request.getOptionalProperty(VALUE);
- final RequestContext context = request.getContext();
+ final String value = tagProcessor.getOptionalProperty(VALUE);
+ final Request context = tagProcessor.getContext();
final ObjectAdapter object = context.getMappedObject(value);
final DebugString str = new DebugString();
Dump.adapter(object, str);
Dump.graph(object, IsisContext.getAuthenticationSession(), str);
- request.appendHtml("<h2>" + object.getSpecification().getFullIdentifier() + "</h2>");
- request.appendHtml("<pre class=\"debug\">" + str + "</pre>");
+ tagProcessor.appendHtml("<h2>" + object.getSpecification().getFullIdentifier() + "</h2>");
+ tagProcessor.appendHtml("<pre class=\"debug\">" + str + "</pre>");
}
}
- if (alwaysShow || request.getContext().getDebug() == RequestContext.Debug.ON) {
+ if (alwaysShow || tagProcessor.getContext().getDebug() == Request.Debug.ON) {
- final RequestContext context = request.getContext();
+ final Request context = tagProcessor.getContext();
- final String id = request.getOptionalProperty("object");
+ final String id = tagProcessor.getOptionalProperty("object");
if (id != null) {
final ObjectAdapter object = context.getMappedObject(id);
if (object instanceof DebuggableWithTitle) {
final DebugString debug = new DebugString();
((DebuggableWithTitle) object).debugData(debug);
- request.appendHtml("<pre class=\"debug\">" + debug + "</pre>");
+ tagProcessor.appendHtml("<pre class=\"debug\">" + debug + "</pre>");
} else {
- request.appendHtml(object.toString());
+ tagProcessor.appendHtml(object.toString());
}
}
- final String variable = request.getOptionalProperty("variable");
+ final String variable = tagProcessor.getOptionalProperty("variable");
if (variable != null) {
final Object object = context.getVariable(variable);
- request.appendHtml(variable + " => " + (object == null ? "null" : object.toString()));
+ tagProcessor.appendHtml(variable + " => " + (object == null ? "null" : object.toString()));
}
- final String list = request.getOptionalProperty("list");
+ final String list = tagProcessor.getOptionalProperty("list");
if (list != null) {
final DebugString debug = new DebugString();
context.append(debug, list);
- request.appendHtml(debug.toString());
+ tagProcessor.appendHtml(debug.toString());
}
- final String uri = request.getOptionalProperty("uri");
+ final String uri = tagProcessor.getOptionalProperty("uri");
if (uri != null) {
- request.appendHtml("<pre class=\"debug\">");
- request.appendHtml(context.getUri());
- request.appendHtml("</pre>");
+ tagProcessor.appendHtml("<pre class=\"debug\">");
+ tagProcessor.appendHtml(context.getUri());
+ tagProcessor.appendHtml("</pre>");
}
}
}
- protected void objectGraph(final Request request) {
- final String id = request.getOptionalProperty(VALUE);
- final ObjectAdapter object = request.getContext().getMappedObjectOrResult(id);
- request.appendHtml("<h1>Object Graph - " + object + "</h1>");
- request.appendHtml("<pre>");
+ protected void objectGraph(final TagProcessor tagProcessor) {
+ final String id = tagProcessor.getOptionalProperty(VALUE);
+ final ObjectAdapter object = tagProcessor.getContext().getMappedObjectOrResult(id);
+ tagProcessor.appendHtml("<h1>Object Graph - " + object + "</h1>");
+ tagProcessor.appendHtml("<pre>");
final DebugBuilder debug = new DebugString();
Dump.graph(object, null, debug);
- request.appendHtml(debug.toString());
- request.appendHtml("</pre>");
+ tagProcessor.appendHtml(debug.toString());
+ tagProcessor.appendHtml("</pre>");
}
- protected void specificationFor(final Request request) {
- final String id = request.getOptionalProperty(VALUE);
- final ObjectAdapter object = request.getContext().getMappedObjectOrResult(id);
- specification(request, object.getSpecification());
+ protected void specificationFor(final TagProcessor tagProcessor) {
+ final String id = tagProcessor.getOptionalProperty(VALUE);
+ final ObjectAdapter object = tagProcessor.getContext().getMappedObjectOrResult(id);
+ specification(tagProcessor, object.getSpecification());
}
- protected void specification(final Request request) {
- final String name = request.getOptionalProperty(VALUE);
+ protected void specification(final TagProcessor tagProcessor) {
+ final String name = tagProcessor.getOptionalProperty(VALUE);
final ObjectSpecification spec = getSpecificationLoader().loadSpecification(name);
- specification(request, spec);
+ specification(tagProcessor, spec);
}
- private void specification(final Request request, final ObjectSpecification spec) {
- request.appendHtml("<h1>Specification - " + spec.getFullIdentifier() + "</h1>");
- request.appendHtml("<p><a href=\"./debug.shtml?type=specification-graph&value=" + spec.getFullIdentifier() + "\">Specification Graph</a></p>");
+ private void specification(final TagProcessor tagProcessor, final ObjectSpecification spec) {
+ tagProcessor.appendHtml("<h1>Specification - " + spec.getFullIdentifier() + "</h1>");
+ tagProcessor.appendHtml("<p><a href=\"./debug.shtml?type=specification-graph&value=" + spec.getFullIdentifier() + "\">Specification Graph</a></p>");
final DebugBuilder debug = new DebugHtmlString();
specification(spec, debug);
- request.appendHtml(debug.toString());
+ tagProcessor.appendHtml(debug.toString());
}
- protected void specificationGraph(final Request request) {
- final String name = request.getOptionalProperty(VALUE);
+ protected void specificationGraph(final TagProcessor tagProcessor) {
+ final String name = tagProcessor.getOptionalProperty(VALUE);
final ObjectSpecification spec = getSpecificationLoader().loadSpecification(name);
- request.appendHtml("<h1>Specification Graph - " + spec.getFullIdentifier() + "</h1>");
- request.appendHtml("<p><a href=\"./debug.shtml?type=specification&value=" + spec.getFullIdentifier() + "\">Full Specification</a></p>");
- request.appendHtml("<pre>");
+ tagProcessor.appendHtml("<h1>Specification Graph - " + spec.getFullIdentifier() + "</h1>");
+ tagProcessor.appendHtml("<p><a href=\"./debug.shtml?type=specification&value=" + spec.getFullIdentifier() + "\">Full Specification</a></p>");
+ tagProcessor.appendHtml("<pre>");
final DebugBuilder debug = new DebugString();
debug.appendln(spec.getFullIdentifier());
debug.indent();
specificationGraph(spec, debug, new ArrayList<ObjectSpecification>());
debug.unindent();
- request.appendHtml(debug.toString());
- request.appendHtml("</pre>");
+ tagProcessor.appendHtml(debug.toString());
+ tagProcessor.appendHtml("</pre>");
}
- private void displayContext(final Request request) {
- request.appendHtml("<h1>Context</h1>");
+ private void displayContext(final TagProcessor tagProcessor) {
+ tagProcessor.appendHtml("<h1>Context</h1>");
final DebugHtmlString debugString = new DebugHtmlString();
- request.getContext().append(debugString);
+ tagProcessor.getContext().append(debugString);
debugString.close();
- request.appendHtml(debugString.toString());
+ tagProcessor.appendHtml(debugString.toString());
}
- private void displayDispatcher(final Request request) {
- request.appendHtml("<h1>Dispatcher</h1>");
+ private void displayDispatcher(final TagProcessor tagProcessor) {
+ tagProcessor.appendHtml("<h1>Dispatcher</h1>");
final DebugHtmlString debugString = new DebugHtmlString();
- dispatcher.debug(debugString);
+ dispatcher.debugData(debugString);
debugString.close();
- request.appendHtml(debugString.toString());
+ tagProcessor.appendHtml(debugString.toString());
}
- protected void displayVariables(final Request request) {
- request.appendHtml("<h1>Variables</h1>");
+ protected void displayVariables(final TagProcessor tagProcessor) {
+ tagProcessor.appendHtml("<h1>Variables</h1>");
final DebugHtmlString debug = new DebugHtmlString();
- final RequestContext context = request.getContext();
+ final Request context = tagProcessor.getContext();
context.append(debug, "variables");
debug.close();
- request.appendHtml(debug.toString());
+ tagProcessor.appendHtml(debug.toString());
}
- protected void displaySystem(final Request request) {
- request.appendHtml("<h1>System</h1>");
+ protected void displaySystem(final TagProcessor tagProcessor) {
+ tagProcessor.appendHtml("<h1>System</h1>");
final DebuggableWithTitle[] debugItems = IsisContext.debugSystem();
for (final DebuggableWithTitle debug : debugItems) {
final DebugHtmlString debugBuffer = new DebugHtmlString();
@@ -260,12 +260,12 @@ public class Debug extends AbstractElementProcessor {
debug.debugData(debugBuffer);
debugBuffer.endSection();
debugBuffer.close();
- request.appendHtml(debugBuffer.toString());
+ tagProcessor.appendHtml(debugBuffer.toString());
}
}
- protected void displaySession(final Request request) {
- request.appendHtml("<h1>Session</h1>");
+ protected void displaySession(final TagProcessor tagProcessor) {
+ tagProcessor.appendHtml("<h1>Session</h1>");
final DebuggableWithTitle[] debugItems = IsisContext.debugSession();
for (final DebuggableWithTitle debug : debugItems) {
final DebugHtmlString debugBuffer = new DebugHtmlString();
@@ -273,12 +273,12 @@ public class Debug extends AbstractElementProcessor {
debug.debugData(debugBuffer);
debugBuffer.endSection();
debugBuffer.close();
- request.appendHtml(debugBuffer.toString());
+ tagProcessor.appendHtml(debugBuffer.toString());
}
}
- protected void listSpecifications(final Request request) {
- request.appendHtml("<h1>Specifications</h1>");
+ protected void listSpecifications(final TagProcessor tagProcessor) {
+ tagProcessor.appendHtml("<h1>Specifications</h1>");
final List<ObjectSpecification> fullIdentifierList = new ArrayList<ObjectSpecification>(getSpecificationLoader().allSpecifications());
Collections.sort(fullIdentifierList, ObjectSpecification.COMPARATOR_SHORT_IDENTIFIER_IGNORE_CASE);
final DebugHtmlString debug = new DebugHtmlString();
@@ -287,7 +287,7 @@ public class Debug extends AbstractElementProcessor {
debug.appendln(name, specificationLink(spec));
}
debug.close();
- request.appendHtml(debug.toString());
+ tagProcessor.appendHtml(debug.toString());
}
private String specificationLink(final ObjectSpecification specification) {
http://git-wip-us.apache.org/repos/asf/isis/blob/49518c89/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/debug/DebugAccessCheck.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/debug/DebugAccessCheck.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/debug/DebugAccessCheck.java
index 796faf0..f48fcad 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/debug/DebugAccessCheck.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/debug/DebugAccessCheck.java
@@ -19,15 +19,15 @@
package org.apache.isis.viewer.scimpi.dispatcher.view.debug;
-import org.apache.isis.viewer.scimpi.dispatcher.AbstractElementProcessor;
-import org.apache.isis.viewer.scimpi.dispatcher.ForbiddenException;
-import org.apache.isis.viewer.scimpi.dispatcher.processor.Request;
+import org.apache.isis.viewer.scimpi.ForbiddenException;
+import org.apache.isis.viewer.scimpi.dispatcher.processor.TagProcessor;
+import org.apache.isis.viewer.scimpi.dispatcher.view.AbstractElementProcessor;
public class DebugAccessCheck extends AbstractElementProcessor {
@Override
- public void process(final Request request) {
- if (request.getContext().isDebugDisabled()) {
+ public void process(final TagProcessor tagProcessor) {
+ if (tagProcessor.getContext().isDebugDisabled()) {
throw new ForbiddenException("Debug is disabled");
}
}