r160 - in trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain: campagne document document/panel extraction lot molecule personne purification specimen station testBio
Author: echatellier Date: 2013-02-26 11:05:31 +0100 (Tue, 26 Feb 2013) New Revision: 160 Url: http://forge.codelutin.com/projects/cantharella/repository/revisions/160 Log: Use model and property model to get entity list Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/campagne/ManageCampagnePage.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/ManageDocumentPage.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/ReadDocumentPage.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/panel/ManageListDocumentsPanel.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/panel/ReadListDocumentsPanel.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/extraction/ManageExtractionPage.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/lot/ManageLotPage.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/molecule/ManageMoleculePage.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/personne/ManagePersonnePage.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/purification/ManagePurificationPage.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/specimen/ManageSpecimenPage.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/station/ManageStationPage.java trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/testBio/ManageTestBioPage.java Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/campagne/ManageCampagnePage.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/campagne/ManageCampagnePage.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/campagne/ManageCampagnePage.java 2013-02-26 10:05:31 UTC (rev 160) @@ -263,7 +263,7 @@ // add list document panel ManageListDocumentsPanel manageListDocumentsPanel = new ManageListDocumentsPanel("ManageListDocumentsPanel", - campagneModel.getObject(), currentPage); + campagneModel, currentPage); formView.add(manageListDocumentsPanel); // Action : création de la campagne Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/ManageDocumentPage.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/ManageDocumentPage.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/ManageDocumentPage.java 2013-02-26 10:05:31 UTC (rev 160) @@ -113,11 +113,12 @@ /** * Constructeur (mode création) * @param callerPage Page appelante - * @param documentAttachable entity where document is attached to + * @param documentAttachableModel entity where document is attached to * @param multipleEntry Saisie multiple */ - public ManageDocumentPage(CallerPage callerPage, DocumentAttachable documentAttachable, boolean multipleEntry) { - this(null, null, documentAttachable, callerPage, multipleEntry); + public ManageDocumentPage(CallerPage callerPage, IModel<? extends DocumentAttachable> documentAttachableModel, + boolean multipleEntry) { + this(null, null, documentAttachableModel, callerPage, multipleEntry); } /** @@ -149,8 +150,9 @@ * @param callerPage Page appelante * @param multipleEntry Saisie multiple */ - private ManageDocumentPage(Integer idDocument, Document document, final DocumentAttachable documentAttachable, - final CallerPage callerPage, boolean multipleEntry) { + private ManageDocumentPage(Integer idDocument, Document document, + final IModel<? extends DocumentAttachable> documentAttachableModel, final CallerPage callerPage, + boolean multipleEntry) { super(ManageDocumentPage.class); assert idDocument == null || document == null; this.callerPage = callerPage; @@ -275,7 +277,7 @@ @Override public void onProcess() throws DataConstraintException { Document document = documentModel.getObject(); - documentAttachable.addDocument(document); + documentAttachableModel.getObject().addDocument(document); } @Override @@ -325,7 +327,7 @@ Button deleteButton = new SubmittableButton(ACTION_DELETE, new SubmittableButtonEvents() { @Override public void onProcess() throws DataConstraintException { - documentAttachable.removeDocument(documentModel.getObject()); + documentAttachableModel.getObject().removeDocument(documentModel.getObject()); } @Override Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/ReadDocumentPage.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/ReadDocumentPage.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/ReadDocumentPage.java 2013-02-26 10:05:31 UTC (rev 160) @@ -60,11 +60,11 @@ /** * Constructeur * @param document document - * @param documentAttachable entity where document is attached to + * @param documentAttachableModel entity where document is attached to * @param callerPage caller page */ - public ReadDocumentPage(final Document document, final DocumentAttachable documentAttachable, - final CallerPage callerPage) { + public ReadDocumentPage(final Document document, + final IModel<? extends DocumentAttachable> documentAttachableModel, final CallerPage callerPage) { super(ReadDocumentPage.class); this.callerPage = callerPage; final CallerPage currentPage = new CallerPage(this); @@ -118,7 +118,7 @@ Button deleteButton = new SubmittableButton(ACTION_DELETE, ManageLotPage.class, new SubmittableButtonEvents() { @Override public void onProcess() throws DataConstraintException { - documentAttachable.removeDocument(documentModel.getObject()); + documentAttachableModel.getObject().removeDocument(documentModel.getObject()); } @Override Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/panel/ManageListDocumentsPanel.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/panel/ManageListDocumentsPanel.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/panel/ManageListDocumentsPanel.java 2013-02-26 10:05:31 UTC (rev 160) @@ -56,24 +56,26 @@ /** * Constructeur. * @param id ID - * @param documentAttachable entity where documents are attached to + * @param documentAttachableModel entity where documents are attached to * @param currentPage currentPage */ - public ManageListDocumentsPanel(String id, final DocumentAttachable documentAttachable, final CallerPage currentPage) { + public ManageListDocumentsPanel(String id, final IModel<? extends DocumentAttachable> documentAttachableModel, + final CallerPage currentPage) { super(id); Form<Void> formView = new Form<Void>("form"); add(formView); - final List<Document> documents = documentAttachable.getDocuments(); - final MarkupContainer documentsTable = new WebMarkupContainer("ListDocumentsPage.AttachedDocuments.Table"); documentsTable.setOutputMarkupId(true); formView.add(documentsTable); + final IModel<List<Document>> documentModel = new PropertyModel<List<Document>>(documentAttachableModel, + "documents"); + // Contenu tableaux provenance ListView<Document> documentsListView = new ListView<Document>("ListDocumentsPage.AttachedDocuments.List", - documents) { + documentModel) { @Override protected void populateItem(ListItem<Document> item) { if (item.getIndex() % 2 == 1) { @@ -85,7 +87,8 @@ Link<Document> documentLink = new Link<Document>("Document.titre.List") { @Override public void onClick() { - setResponsePage(new ReadDocumentPage(documentModel.getObject(), documentAttachable, currentPage)); + setResponsePage(new ReadDocumentPage(documentModel.getObject(), documentAttachableModel, + currentPage)); } }; documentLink.add(new Label("Document.titre.Label.List", new PropertyModel<Document>(documentModel, @@ -101,7 +104,7 @@ @Override protected void onSubmit(AjaxRequestTarget target, Form<?> form) { Document document = documentModel.getObject(); - documentAttachable.removeDocument(document); + documentAttachableModel.getObject().removeDocument(document); if (target != null) { target.add(documentsTable); @@ -115,13 +118,13 @@ documentsTable.add(new AjaxSubmitLink("NewDocument") { @Override protected void onSubmit(AjaxRequestTarget request, Form<?> form) { - setResponsePage(new ManageDocumentPage(currentPage, documentAttachable, false)); + setResponsePage(new ManageDocumentPage(currentPage, documentAttachableModel, false)); } // si erreur, le formulaire est également enregistré puis la redirection effectuée @Override protected void onError(AjaxRequestTarget target, Form<?> form) { - setResponsePage(new ManageDocumentPage(currentPage, documentAttachable, false)); + setResponsePage(new ManageDocumentPage(currentPage, documentAttachableModel, false)); } }.setVisibilityAllowed(true)); } Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/panel/ReadListDocumentsPanel.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/panel/ReadListDocumentsPanel.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/document/panel/ReadListDocumentsPanel.java 2013-02-26 10:05:31 UTC (rev 160) @@ -38,10 +38,7 @@ import org.apache.wicket.markup.html.list.ListView; import org.apache.wicket.markup.html.panel.Panel; import org.apache.wicket.model.IModel; -import org.apache.wicket.model.LoadableDetachableModel; import org.apache.wicket.model.PropertyModel; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; /** * Display document list in manage mode. @@ -49,9 +46,6 @@ */ public final class ReadListDocumentsPanel extends Panel { - /** Logger */ - private static final Logger LOG = LoggerFactory.getLogger(ReadListDocumentsPanel.class); - /** * Constructeur * @param id ID @@ -66,18 +60,12 @@ documentsTable.setOutputMarkupId(true); add(documentsTable); - // Model de liste des provenances - final LoadableDetachableModel<List<Document>> listProvenanceModel = new LoadableDetachableModel<List<Document>>() { - @Override - protected List<Document> load() { - LOG.debug("Reloading attached documents list"); - return documentAttachableModel.getObject().getDocuments(); - } - }; + final IModel<List<Document>> documentModel = new PropertyModel<List<Document>>(documentAttachableModel, + "documents"); // Contenu tableaux provenance ListView<Document> documentsListView = new ListView<Document>("ListDocumentsPage.AttachedDocuments.List", - listProvenanceModel) { + documentModel) { @Override protected void populateItem(ListItem<Document> item) { if (item.getIndex() % 2 == 1) { @@ -89,8 +77,8 @@ Link<Document> documentLink = new Link<Document>("Document.titre.List") { @Override public void onClick() { - setResponsePage(new ReadDocumentPage(documentModel.getObject(), documentAttachableModel - .getObject(), currentPage)); + setResponsePage(new ReadDocumentPage(documentModel.getObject(), documentAttachableModel, + currentPage)); } }; documentLink.add(new Label("Document.titre.Label.List", new PropertyModel<Document>(documentModel, @@ -110,7 +98,7 @@ MarkupContainer noTableDocuments = new WebMarkupContainer("ListDocumentsPage.AttachedDocuments.noTable") { @Override public boolean isVisible() { - return listProvenanceModel.getObject().isEmpty(); + return documentModel.getObject().isEmpty(); } }; add(noTableDocuments); Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/extraction/ManageExtractionPage.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/extraction/ManageExtractionPage.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/extraction/ManageExtractionPage.java 2013-02-26 10:05:31 UTC (rev 160) @@ -274,7 +274,7 @@ // add list document panel ManageListDocumentsPanel manageListDocumentsPanel = new ManageListDocumentsPanel("ManageListDocumentsPanel", - extractionModel.getObject(), currentPage); + extractionModel, currentPage); formView.add(manageListDocumentsPanel); // Action : create the extraction Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/lot/ManageLotPage.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/lot/ManageLotPage.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/lot/ManageLotPage.java 2013-02-26 10:05:31 UTC (rev 160) @@ -294,7 +294,7 @@ // add list document panel ManageListDocumentsPanel manageListDocumentsPanel = new ManageListDocumentsPanel("ManageListDocumentsPanel", - lotModel.getObject(), currentPage); + lotModel, currentPage); formView.add(manageListDocumentsPanel); // Action : création du lot Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/molecule/ManageMoleculePage.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/molecule/ManageMoleculePage.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/molecule/ManageMoleculePage.java 2013-02-26 10:05:31 UTC (rev 160) @@ -277,7 +277,7 @@ // add list document panel ManageListDocumentsPanel manageListDocumentsPanel = new ManageListDocumentsPanel("ManageListDocumentsPanel", - moleculeModel.getObject(), currentPage); + moleculeModel, currentPage); formView.add(manageListDocumentsPanel); // Action : create molecule Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/personne/ManagePersonnePage.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/personne/ManagePersonnePage.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/personne/ManagePersonnePage.java 2013-02-26 10:05:31 UTC (rev 160) @@ -144,7 +144,7 @@ // add list document panel ManageListDocumentsPanel manageListDocumentsPanel = new ManageListDocumentsPanel("ManageListDocumentsPanel", - personneModel.getObject(), currentPage); + personneModel, currentPage); formView.add(manageListDocumentsPanel); // Action : création de la personne Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/purification/ManagePurificationPage.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/purification/ManagePurificationPage.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/purification/ManagePurificationPage.java 2013-02-26 10:05:31 UTC (rev 160) @@ -248,7 +248,7 @@ // add list document panel ManageListDocumentsPanel manageListDocumentsPanel = new ManageListDocumentsPanel("ManageListDocumentsPanel", - purificationModel.getObject(), currentPage); + purificationModel, currentPage); formView.add(manageListDocumentsPanel); // Action : create the purification Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/specimen/ManageSpecimenPage.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/specimen/ManageSpecimenPage.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/specimen/ManageSpecimenPage.java 2013-02-26 10:05:31 UTC (rev 160) @@ -282,7 +282,7 @@ // add list document panel ManageListDocumentsPanel manageListDocumentsPanel = new ManageListDocumentsPanel("ManageListDocumentsPanel", - specimenModel.getObject(), currentPage); + specimenModel, currentPage); formView.add(manageListDocumentsPanel); // Action : création du specimen Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/station/ManageStationPage.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/station/ManageStationPage.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/station/ManageStationPage.java 2013-02-26 10:05:31 UTC (rev 160) @@ -228,7 +228,7 @@ // add list document panel ManageListDocumentsPanel manageListDocumentsPanel = new ManageListDocumentsPanel("ManageListDocumentsPanel", - stationModel.getObject(), currentPage); + stationModel, currentPage); formView.add(manageListDocumentsPanel); Button createButton = new SubmittableButton(ACTION_CREATE, new SubmittableButtonEvents() { Modified: trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/testBio/ManageTestBioPage.java =================================================================== --- trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/testBio/ManageTestBioPage.java 2013-02-25 17:26:52 UTC (rev 159) +++ trunk/cantharella.web/src/main/java/nc/ird/cantharella/web/pages/domain/testBio/ManageTestBioPage.java 2013-02-26 10:05:31 UTC (rev 160) @@ -279,7 +279,7 @@ // add list document panel ManageListDocumentsPanel manageListDocumentsPanel = new ManageListDocumentsPanel("ManageListDocumentsPanel", - testBioModel.getObject(), currentPage); + testBioModel, currentPage); formView.add(manageListDocumentsPanel); // Action : create the testBio
participants (1)
-
echatellier@users.forge.codelutin.com