public void filter(Collection list) throws Exception { resetStorage(); initializeStorage(new Vector()); Iterator i, j; Metadata data; MetadataBase newData; String criteria; i = list.iterator(); while (i.hasNext()) { data = (Metadata) i.next(); criteria = defineCriteria(data); if (null != criteria) { agent.setCriteria(criteria); agent.search(); if (0 == agent.getResults().size()) store(data); else { j = agent.getResults().iterator(); while (j.hasNext()) { newData = new MetadataBase(); newData.setOrigin(data.getOrigin()); newData.setName(data.getName()); newData.merge(agent.getName(), (Metadata) j.next()); newData.merge(data); store(newData); } } } } }
public boolean hasBeenRenumbered(Origin sourceOrigin) { try { SynchronizationService s = SynchronizationClient.getClient(); Origin lastSynchronization = s.lastSynchronization( sourceOrigin.getDomainName(), sourceOrigin.getServerName(), sourceOrigin.getRepositoryName(), sourceOrigin.getName()); if (null == lastSynchronization) return false; Collection c = s.findAllSynchronizationOrigins(lastSynchronization); Iterator i = c.iterator(); Origin t; Repository targetRepository = getPenPolicy().getTargetRepository(); while (i.hasNext()) { t = (Origin) i.next(); if (!t.getDomainName().equals(targetRepository.getDomainName())) continue; else if (!t.getServerName().equals(targetRepository.getServerName())) continue; else if (!t.getRepositoryName().equals(targetRepository.getRepositoryName())) continue; else { Metadata txData = lookupTxMetadata(getCurrentItem()); if (t.getName().equalsIgnoreCase(txData.getName())) return false; else return true; } } } catch (Exception e) { e.printStackTrace(); return false; } return false; }