View Javadoc

1   package org.starobjects.restful.viewer.resources.objects.actions;
2   
3   import java.text.MessageFormat;
4   
5   import nu.xom.Element;
6   
7   import org.nakedobjects.metamodel.adapter.NakedObject;
8   import org.nakedobjects.metamodel.authentication.AuthenticationSession;
9   import org.nakedobjects.metamodel.spec.NakedObjectSpecification;
10  import org.nakedobjects.metamodel.spec.feature.NakedObjectAction;
11  import org.starobjects.restful.viewer.html.HtmlClass;
12  import org.starobjects.restful.viewer.resources.objects.TableColumnNakedObjectMemberName;
13  import org.starobjects.restful.viewer.xom.ResourceContext;
14  
15  
16  public class TableColumnNakedObjectActionName extends TableColumnNakedObjectMemberName<NakedObjectAction> {
17  
18      public TableColumnNakedObjectActionName(
19              final NakedObjectSpecification noSpec,
20              final AuthenticationSession session,
21              final NakedObject nakedObject,
22              final ResourceContext resourceContext) {
23          super(noSpec, session, nakedObject, resourceContext);
24      }
25  
26      @Override
27      public Element doTd(final NakedObjectAction nakedObjectAction) {
28          final String actionId = nakedObjectAction.getIdentifier().toNameParmsIdentityString();
29          final String memberType = "action";
30          final String uri = MessageFormat.format("{0}/specs/{1}/{2}/{3}", getContextPath(), getNoSpec().getFullName(), memberType, actionId);
31          return new Element(xhtmlRenderer.aHref(uri, nakedObjectAction.getName(), "actionSpec", memberType, HtmlClass.ACTION));
32      }
33  
34  }