r1424 - in trunk: tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service tutti-service/src/main/java/fr/ifremer/tutti/service
Author: tchemit Date: 2013-12-04 00:52:43 +0100 (Wed, 04 Dec 2013) New Revision: 1424 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1424 Log: fixes #3915: [VALIDATION] une erreur ?\195?\160 nalyser au lancement du processus de validation Modified: trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceImpl.java trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/TuttiDataContext.java Modified: trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceImpl.java =================================================================== --- trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceImpl.java 2013-12-03 21:39:52 UTC (rev 1423) +++ trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceImpl.java 2013-12-03 23:52:43 UTC (rev 1424) @@ -66,6 +66,9 @@ } public void setProtocol(TuttiProtocol protocol) { + if (log.isDebugEnabled()) { + log.debug("Set shared protocol: " + protocol); + } sharedProtocol = protocol; } Modified: trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/TuttiDataContext.java =================================================================== --- trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/TuttiDataContext.java 2013-12-03 21:39:52 UTC (rev 1423) +++ trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/TuttiDataContext.java 2013-12-03 23:52:43 UTC (rev 1424) @@ -187,8 +187,8 @@ close(); this.service = persistenceService; - // attach protocol to service - this.service.setProtocol(getProtocol()); + // load protocol and propagate it to service + getProtocol(); loadSampleCategoryModel(config.getSampleCategoryModel()); } @@ -392,6 +392,11 @@ firePropertyChange(PROPERTY_PROTOCOL_ID, -1, protocolId); firePropertyChange(PROPERTY_PROTOCOL_FILLED, oldValue, isProtocolFilled()); + + if (getService() != null) { + // always reload protocol (as a side-effect push it to protocol service) + getProtocol(); + } } public void setFishingOperationId(String fishingOperationId) { @@ -434,16 +439,27 @@ public TuttiProtocol getProtocol() { checkOpened(); - TuttiProtocol protocol = service.getProtocol(); - if (protocol == null && isProtocolFilled()) { - String id = getProtocolId(); - if (log.isInfoEnabled()) { - log.info("Loading protocol: " + id); + if (isProtocolFilled()) { + TuttiProtocol protocol = service.getProtocol(); + if (protocol == null) { + String id = getProtocolId(); + if (log.isInfoEnabled()) { + log.info("Loading protocol: " + id + " for service: " + service); + } + protocol = service.getProtocol(id); + service.setProtocol(protocol); } - protocol = service.getProtocol(id); - service.setProtocol(protocol); + } else { + TuttiProtocol protocol = service.getProtocol(); + if (protocol != null) { + if (log.isInfoEnabled()) { + log.info("Remove protocol: "+protocol); + } + service.setProtocol(null); + } } - return protocol; + TuttiProtocol result = service.getProtocol(); + return result; } public FishingOperation getFishingOperation() {
participants (1)
-
tchemit@users.forge.codelutin.com