r725 - in trunk: simexplorer-is/src/site/fr/rst simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/credentials simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/dao simexplorer-is-service/src/java/fr/cemagref/simexplorer/is/service simexplorer-is-service/src/test/fr/cemagref/simexplorer/is/service
Author: glandais Date: 2008-02-07 15:50:47 +0000 (Thu, 07 Feb 2008) New Revision: 725 Modified: trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/credentials/CredentialManagerImpl.java trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/dao/DaoSecurity.java trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/dao/DaoSecurityImpl.java trunk/simexplorer-is-service/src/java/fr/cemagref/simexplorer/is/service/StorageServiceCommon.java trunk/simexplorer-is-service/src/test/fr/cemagref/simexplorer/is/service/StorageServiceMassInsert.java trunk/simexplorer-is/src/site/fr/rst/todo.rst Log: Cr?\195?\169ation permission lors de la sauvegarde uniquement si n?\195?\169cessaire Modified: trunk/simexplorer-is/src/site/fr/rst/todo.rst =================================================================== --- trunk/simexplorer-is/src/site/fr/rst/todo.rst 2008-02-07 14:51:28 UTC (rev 724) +++ trunk/simexplorer-is/src/site/fr/rst/todo.rst 2008-02-07 15:50:47 UTC (rev 725) @@ -15,7 +15,6 @@ Consultation ------------ - - Détails metadata - Interface utilisateur : CSS, mise en page Client lourd Modified: trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/credentials/CredentialManagerImpl.java =================================================================== --- trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/credentials/CredentialManagerImpl.java 2008-02-07 14:51:28 UTC (rev 724) +++ trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/credentials/CredentialManagerImpl.java 2008-02-07 15:50:47 UTC (rev 725) @@ -110,14 +110,29 @@ * @see fr.cemagref.simexplorer.is.security.credentials.CredentialManager#saveElement(java.lang.String, java.lang.String) */ public Permission saveElement(String token, String businessId) { - Permission p = new Permission(); - p.setActor(dao.getLoggedUser(token)); - p.setBusinessId(businessId); + Permission p = getPermission(token, businessId); + boolean createPermission = false; + if (p == null) { + createPermission = true; + } + if (p != null) { + User user = dao.getLoggedUser(token); + if (!user.getId().equals(p.getActor().getId())) { + createPermission = true; + } + } + if (createPermission) { + p = new Permission(); + p.setActor(dao.getLoggedUser(token)); + p.setBusinessId(businessId); + dao.savePermission(p); + } p.setCanAdmin(true); p.setCanRead(true); p.setCanWrite(true); p.setOwner(true); - dao.savePermission(p); + dao.updatePermission(p); + return p; } Modified: trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/dao/DaoSecurity.java =================================================================== --- trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/dao/DaoSecurity.java 2008-02-07 14:51:28 UTC (rev 724) +++ trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/dao/DaoSecurity.java 2008-02-07 15:50:47 UTC (rev 725) @@ -234,6 +234,14 @@ public void savePermission(Permission p); /** + * Update permission. + * + * @param p + * the p + */ + public void updatePermission(Permission p); + + /** * Sets the permissions. * * @param uuid Modified: trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/dao/DaoSecurityImpl.java =================================================================== --- trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/dao/DaoSecurityImpl.java 2008-02-07 14:51:28 UTC (rev 724) +++ trunk/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/dao/DaoSecurityImpl.java 2008-02-07 15:50:47 UTC (rev 725) @@ -306,4 +306,9 @@ } } + @Override + public void updatePermission(Permission p) { + em.merge(p); + } + } Modified: trunk/simexplorer-is-service/src/java/fr/cemagref/simexplorer/is/service/StorageServiceCommon.java =================================================================== --- trunk/simexplorer-is-service/src/java/fr/cemagref/simexplorer/is/service/StorageServiceCommon.java 2008-02-07 14:51:28 UTC (rev 724) +++ trunk/simexplorer-is-service/src/java/fr/cemagref/simexplorer/is/service/StorageServiceCommon.java 2008-02-07 15:50:47 UTC (rev 725) @@ -57,6 +57,7 @@ public abstract class StorageServiceCommon implements StorageService, XmlConstants { + /** The xml attachment. */ private Attachment xmlAttachment = null; /** @@ -80,6 +81,11 @@ getStorageEngine().close(); } + /** + * Gets the xML attachment. + * + * @return the xML attachment + */ private Attachment getXMLAttachment() { if (xmlAttachment == null) { xmlAttachment = new Attachment(); Modified: trunk/simexplorer-is-service/src/test/fr/cemagref/simexplorer/is/service/StorageServiceMassInsert.java =================================================================== --- trunk/simexplorer-is-service/src/test/fr/cemagref/simexplorer/is/service/StorageServiceMassInsert.java 2008-02-07 14:51:28 UTC (rev 724) +++ trunk/simexplorer-is-service/src/test/fr/cemagref/simexplorer/is/service/StorageServiceMassInsert.java 2008-02-07 15:50:47 UTC (rev 725) @@ -77,29 +77,6 @@ storageService = (StorageService) context.lookup("StorageService"); } - /* - public void testExportXML() throws Exception { - ExplorationApplication ea = elementGenerator.generateRandomEA(); - InputStream xmlStream = BaseEntityFactory.getFactory( - ExplorationApplication.class).saveElement(ea); - - FileOutputStream os = new FileOutputStream( - "/var/local/simexplorer/test.xml"); - - // Buffer copy stream to stream - BufferedInputStream bin = new BufferedInputStream(xmlStream); - BufferedOutputStream bout = new BufferedOutputStream(os); - - while (true) { - int datum = bin.read(); - if (datum == -1) - break; - bout.write(datum); - } - bout.flush(); - } - */ - /** * Test mass insert. *
participants (1)
-
glandais@users.labs.libre-entreprise.org