From glandais@users.labs.libre-entreprise.org Mon Jun 15 08:43:46 2026
From: glandais@users.labs.libre-entreprise.org
To: simexplorer-si-commits@list.forge.codelutin.com
Subject: [Simexplorer-si-commits] r545 -
trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web/pages
Date: Fri, 25 Jan 2008 17:16:46 +0100
Message-ID: <20080125161646.D2BEC461AFA@labs.libre-entreprise.org>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============0313364474551118963=="
--===============0313364474551118963==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Author: glandais
Date: 2008-01-25 16:16:46 +0000 (Fri, 25 Jan 2008)
New Revision: 545
Added:
trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web/pages/=
ElementPageDetail.java
Modified:
trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web/pages/=
ElementDetail.java
trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web/pages/=
ElementHistory.java
Log:
Share common links of detail and history
Modified: trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web=
/pages/ElementDetail.java
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web/pages=
/ElementDetail.java 2008-01-25 16:16:18 UTC (rev 544)
+++ trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web/pages=
/ElementDetail.java 2008-01-25 16:16:46 UTC (rev 545)
@@ -47,27 +47,12 @@
import fr.cemagref.simexplorer.is.ui.web.services.RemoteStorageService;
import fr.cemagref.simexplorer.is.ui.web.tools.AttachmentStreamResponse;
=20
-public class ElementDetail extends ElementPage {
+public class ElementDetail extends ElementPageDetail {
=20
- @Inject
- private ComponentResources resources;
-
- @InjectPage
- private ElementExport elementExport;
-
- @InjectPage
- private ElementHistory elementHistory;
-
- @InjectPage
- private ElementDelete elementDelete;
-
- @InjectPage
- private ElementRights elementRights;
-
public String getWindowTitle() {
return "";
}
- =20
+
/**
* Headers of tree grid
*=20
@@ -88,38 +73,6 @@
return nodes;
}
=20
- public Object onExport(String context) {
- StringTokenizer st =3D new StringTokenizer(context, ",");
- String uuid =3D st.nextToken();
- String version =3D st.nextToken();
- elementExport.setup(uuid, version);
- return elementExport;
- }
-
- public Object onHistory(String context) {
- StringTokenizer st =3D new StringTokenizer(context, ",");
- String uuid =3D st.nextToken();
- String version =3D st.nextToken();
- elementHistory.setup(uuid, version);
- return elementHistory;
- }
-
- public Object onDelete(String context) {
- StringTokenizer st =3D new StringTokenizer(context, ",");
- String uuid =3D st.nextToken();
- String version =3D st.nextToken();
- elementDelete.setup(uuid, version);
- return elementDelete;
- }
-
- public Object onRights(String context) {
- StringTokenizer st =3D new StringTokenizer(context, ",");
- String uuid =3D st.nextToken();
- String version =3D st.nextToken();
- elementRights.setup(uuid, version);
- return elementRights;
- }
-
private Object downloadElement(String uuid, String version) {
StreamResponse response;
=20
@@ -160,55 +113,6 @@
return node;
}
=20
- private String generateString(String actionCaption, String action,
- LoggableElement element) {
- String context =3D element.getMetaData().getUuid() + ","
- + element.getMetaData().getVersion();
- Link link =3D resources.createActionLink(action, false, context);
- StringBuffer sb =3D new StringBuffer("");
- sb.append("");
- sb.append(actionCaption);
- sb.append("");
- return sb.toString();
- }
-
- private String generateActions(LoggableElement element, StringBuilder sb,
- String... actions) {
- String res;
- for (String anAction : actions) {
- sb.append("
");
- sb.append(generateString(anAction, anAction, element));
- }
- sb.append("
");
- // TODO add security
- sb.append(generateString("rights", "rights", element));
-
- res =3D sb.substring(4);
- return res;
- }
-
- private String[] generateStringArray(String s1, String s2, String s3,
- LoggableElement element, String... actions) {
- List result =3D new ArrayList();
- result.add(s1);
- result.add(s2);
- result.add(s3);
- String s4 =3D "";
- StringBuilder sb =3D new StringBuilder("");
- if (element !=3D null) {
- s4 =3D generateActions(element, sb, actions);
- }
- result.add(s4);
-
- return result.toArray(new String[result.size()]);
- }
-
- private String[] generateStringArray(String s1, String s2, String s3) {
- return generateStringArray(s1, s2, s3, null);
- }
-
private String generateHeader(String caption) {
StringBuilder sb =3D new StringBuilder();
sb.append("");
@@ -225,8 +129,8 @@
=20
node.setColumns(generateStringArray("Application exploration",
getElement().getMetaData().getName(), getElement()
- .getMetaData().getVersion().toString(), getElement(),
- "export", "history", "delete"));
+ .getMetaData().getVersion().toString(), getElement()
+ .getMetaData(), "export", "history", "delete"));
=20
List children =3D new ArrayList();
TreeNode node1 =3D new TreeNode();
@@ -265,8 +169,8 @@
=20
explorationDataNode.setColumns(generateStringArray("Exploration data=
",
explorationData.getMetaData().getName(), explorationData
- .getMetaData().getVersion().toString(),
- explorationData, "history", "delete"));
+ .getMetaData().getVersion().toString(), explorationD=
ata
+ .getMetaData(), "history", "delete"));
=20
List children =3D new ArrayList();
=20
@@ -302,8 +206,8 @@
TreeNode res =3D new TreeNode();
res.setType(TreeNode.TYPE_DOCUMENT);
=20
- res.setColumns(generateStringArray("Result", "", "", explorationData,
- "download"));
+ res.setColumns(generateStringArray("Result", "", "", explorationData
+ .getMetaData(), "download"));
return res;
}
=20
@@ -331,7 +235,7 @@
=20
componentNode.setColumns(generateStringArray("Component", component
.getMetaData().getName(), component.getMetaData().getVersion=
()
- .toString(), component, "history", "delete"));
+ .toString(), component.getMetaData(), "history", "delete"));
=20
List children =3D new ArrayList();
=20
@@ -374,9 +278,11 @@
TreeNode node =3D new TreeNode();
node.setType(TreeNode.TYPE_DOCUMENT);
=20
- node.setColumns(generateStringArray("Library", library
- .getMetaData().getName(), library.getMetaData()
- .getVersion().toString(), library, "download"));
+ node
+ .setColumns(generateStringArray("Library", library
+ .getMetaData().getName(), library.getMetaData()
+ .getVersion().toString(), library.getMetaData(),
+ "download"));
=20
res.add(node);
}
Modified: trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web=
/pages/ElementHistory.java
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web/pages=
/ElementHistory.java 2008-01-25 16:16:18 UTC (rev 544)
+++ trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web/pages=
/ElementHistory.java 2008-01-25 16:16:46 UTC (rev 545)
@@ -22,15 +22,19 @@
import java.util.Comparator;
import java.util.List;
=20
+import org.apache.tapestry.ComponentResources;
+import org.apache.tapestry.Link;
import org.apache.tapestry.annotations.Persist;
+import org.apache.tapestry.ioc.annotations.Inject;
import org.codelutin.tapestry.beans.TreeNode;
=20
+import fr.cemagref.simexplorer.is.entities.data.LoggableElement;
import fr.cemagref.simexplorer.is.entities.metadata.MetaDataEntity;
import fr.cemagref.simexplorer.is.entities.metadata.Version;
import fr.cemagref.simexplorer.is.ui.web.SimExplorerWebException;
import fr.cemagref.simexplorer.is.ui.web.services.RemoteStorageService;
=20
-public class ElementHistory extends ElementPage {
+public class ElementHistory extends ElementPageDetail {
=20
public class MetadataVersionComparator implements
Comparator {
@@ -44,6 +48,9 @@
@Persist
private MetaDataEntity[] versions;
=20
+ @Inject
+ private ComponentResources resources;
+
@Override
public void setup(String uuid, String version) {
super.setup(uuid, version);
@@ -58,7 +65,7 @@
public String getWindowTitle() {
return "";
}
- =20
+
/**
* Headers of tree grid
*=20
@@ -134,7 +141,8 @@
TreeNode node =3D new TreeNode();
// FIXME date tostring
node.setColumns(generateStringArray(mde.getVersion().toString(), mde
- .getDescription(), mde.getCreationDate().toString()));
+ .getDescription(), mde.getCreationDate().toString(), mde,
+ "export", "delete", "details"));
node.setObject(mde.getVersion());
node.setType(TreeNode.TYPE_DOCUMENT);
return node;
@@ -144,8 +152,4 @@
return (Version) treeNode.getObject();
}
=20
- private String[] generateStringArray(String... s) {
- return s;
- }
-
}
Added: trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web/pa=
ges/ElementPageDetail.java
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web/pages=
/ElementPageDetail.java (rev 0)
+++ trunk/simexplorer-is-web/src/java/fr/cemagref/simexplorer/is/ui/web/pages=
/ElementPageDetail.java 2008-01-25 16:16:46 UTC (rev 545)
@@ -0,0 +1,140 @@
+/*=20
+* ##% Copyright (C) 2008 Code Lutin, Gabriel Landais
+*
+* This program is free software; you can redistribute it and/or
+* modify it under the terms of the GNU General Public License
+* as published by the Free Software Foundation; either version 2
+* of the License, or (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+* ##% */
+package fr.cemagref.simexplorer.is.ui.web.pages;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.StringTokenizer;
+
+import org.apache.tapestry.ComponentResources;
+import org.apache.tapestry.Link;
+import org.apache.tapestry.annotations.InjectPage;
+import org.apache.tapestry.ioc.annotations.Inject;
+
+import fr.cemagref.simexplorer.is.entities.data.LoggableElement;
+import fr.cemagref.simexplorer.is.entities.metadata.MetaDataEntity;
+
+public abstract class ElementPageDetail extends ElementPage {
+
+ @Inject
+ private ComponentResources resources;
+
+ @InjectPage
+ private ElementExport elementExport;
+
+ @InjectPage
+ private ElementHistory elementHistory;
+
+ @InjectPage
+ private ElementDelete elementDelete;
+
+ @InjectPage
+ private ElementRights elementRights;
+
+ @InjectPage
+ private ElementDetail elementDetail;
+
+ public Object onExport(String context) {
+ StringTokenizer st =3D new StringTokenizer(context, ",");
+ String uuid =3D st.nextToken();
+ String version =3D st.nextToken();
+ elementExport.setup(uuid, version);
+ return elementExport;
+ }
+
+ public Object onHistory(String context) {
+ StringTokenizer st =3D new StringTokenizer(context, ",");
+ String uuid =3D st.nextToken();
+ String version =3D st.nextToken();
+ elementHistory.setup(uuid, version);
+ return elementHistory;
+ }
+
+ public Object onDelete(String context) {
+ StringTokenizer st =3D new StringTokenizer(context, ",");
+ String uuid =3D st.nextToken();
+ String version =3D st.nextToken();
+ elementDelete.setup(uuid, version);
+ return elementDelete;
+ }
+
+ public Object onRights(String context) {
+ StringTokenizer st =3D new StringTokenizer(context, ",");
+ String uuid =3D st.nextToken();
+ String version =3D st.nextToken();
+ elementRights.setup(uuid, version);
+ return elementRights;
+ }
+
+ public Object onDetails(String context) {
+ StringTokenizer st =3D new StringTokenizer(context, ",");
+ String uuid =3D st.nextToken();
+ String version =3D st.nextToken();
+ elementDetail.setup(uuid, version);
+ return elementDetail;
+ }
+
+ private String generateString(String actionCaption, String action,
+ MetaDataEntity element) {
+ String context =3D element.getUuid() + "," + element.getVersion();
+ Link link =3D resources.createActionLink(action, false, context);
+ StringBuffer sb =3D new StringBuffer("");
+ sb.append("");
+ sb.append(actionCaption);
+ sb.append("");
+ return sb.toString();
+ }
+
+ private String generateActions(MetaDataEntity element, String... actions=
) {
+ StringBuilder sb =3D new StringBuilder("");
+
+ String res;
+ for (String anAction : actions) {
+ sb.append("
");
+ sb.append(generateString(anAction, anAction, element));
+ }
+ sb.append("
");
+ // TODO add security
+ sb.append(generateString("rights", "rights", element));
+
+ res =3D sb.substring(4);
+ return res;
+ }
+
+ protected String[] generateStringArray(String s1, String s2, String s3,
+ MetaDataEntity element, String... actions) {
+ List result =3D new ArrayList();
+ result.add(s1);
+ result.add(s2);
+ result.add(s3);
+ String s4 =3D "";
+ if (element !=3D null) {
+ s4 =3D generateActions(element, actions);
+ }
+ result.add(s4);
+
+ return result.toArray(new String[result.size()]);
+ }
+
+ protected String[] generateStringArray(String... s) {
+ return s;
+ }
+
+}
--===============0313364474551118963==--