/** * Gets the last lifecycle event with the provided CvLifecycleEvent identifier for a publication. * @param publication the publication * @param cvLifecycleEventId the identifier of the CvLifecycleEvent cv * @return The last event with that identifier * @since 2.5.0 */ public static LifecycleEvent getLastEventOfType(Publication publication, String cvLifecycleEventId) { LifecycleEvent lastEvent = null; List<LifecycleEvent> sorted = IntactCore.ensureInitializedLifecycleEvents(publication); Collections.sort(sorted, new Comparator<LifecycleEvent>() { @Override public int compare(LifecycleEvent o1, LifecycleEvent o2) { return o1.getWhen().compareTo(o2.getWhen()); } }); for (LifecycleEvent event : IntactCore.ensureInitializedLifecycleEvents(publication)) { if (cvLifecycleEventId.equals(event.getEvent().getIdentifier())) { lastEvent = event; } } return lastEvent; }
/** * Gets the last lifecycle event with the provided CvLifecycleEvent identifier for a publication. * @param publication the publication * @param cvLifecycleEventId the identifier of the CvLifecycleEvent cv * @return The last event with that identifier * @since 2.5.0 */ public static LifecycleEvent getLastEventOfType(Publication publication, String cvLifecycleEventId) { LifecycleEvent lastEvent = null; List<LifecycleEvent> sorted = IntactCore.ensureInitializedLifecycleEvents(publication); Collections.sort(sorted, new Comparator<LifecycleEvent>() { @Override public int compare(LifecycleEvent o1, LifecycleEvent o2) { return o1.getWhen().compareTo(o2.getWhen()); } }); for (LifecycleEvent event : IntactCore.ensureInitializedLifecycleEvents(publication)) { if (cvLifecycleEventId.equals(event.getEvent().getIdentifier())) { lastEvent = event; } } return lastEvent; }
public Publication clonePublication(Publication publication) throws IntactClonerException { if (publication == null) return null; Publication clone = new Publication(); clonerManager.addClone(publication, clone); if (isCollectionClonable(publication.getExperiments())) { Collection<Experiment> experiments = IntactCore.ensureInitializedExperiments(publication); for (Experiment e : experiments) { clone.addExperiment(clone(e)); } } if (isCollectionClonable(publication.getLifecycleEvents())) { Collection<LifecycleEvent> events = IntactCore.ensureInitializedLifecycleEvents(publication); for (LifecycleEvent event : events) { clone.addLifecycleEvent(clone(event)); } } clone.setStatus(clone(publication.getStatus())); clone.setCurrentOwner(clone(publication.getCurrentOwner())); clone.setCurrentReviewer(clone(publication.getCurrentReviewer())); return clone; }
public Publication clonePublication(Publication publication) throws IntactClonerException { if (publication == null) return null; Publication clone = new Publication(); clonerManager.addClone(publication, clone); if (isCollectionClonable(publication.getExperiments())) { Collection<Experiment> experiments = IntactCore.ensureInitializedExperiments(publication); for (Experiment e : experiments) { clone.addExperiment(clone(e)); } } if (isCollectionClonable(publication.getLifecycleEvents())) { Collection<LifecycleEvent> events = IntactCore.ensureInitializedLifecycleEvents(publication); for (LifecycleEvent event : events) { clone.addLifecycleEvent(clone(event)); } } clone.setStatus(clone(publication.getStatus())); clone.setCurrentOwner(clone(publication.getCurrentOwner())); clone.setCurrentReviewer(clone(publication.getCurrentReviewer())); return clone; }