diff --git a/src/fr/inrialpes/exmo/align/service/CacheImpl.java b/src/fr/inrialpes/exmo/align/service/CacheImpl.java index 70ccb08455b85173366086dd0324c0e0c83a700e..1fa55dc7b7e41fae8613351d6487fea43d60ab7c 100644 --- a/src/fr/inrialpes/exmo/align/service/CacheImpl.java +++ b/src/fr/inrialpes/exmo/align/service/CacheImpl.java @@ -191,6 +191,27 @@ public class CacheImpl { return alignmentTable.values(); } + protected Collection<Alignment> alignments( URI u1, URI u2 ) { + Collection<Alignment> results = new HashSet<Alignment>(); + if ( u1 != null ) { + for ( Alignment al : ontologyTable.get( u1 ) ) { + try { + if ( al.getOntology1URI().equals( u1 ) ) { + if ( u2 == null ) results.add( al ); + else if ( al.getOntology2URI().equals( u2 ) ) results.add( al ); + } + } catch (AlignmentException alex) {} // ignore + } + } else if ( u2 != null ) { + for ( Alignment al : ontologyTable.get( u2 ) ) { + try { + if ( al.getOntology2URI().equals( u2 ) ) results.add( al ); + } catch (AlignmentException alex) {} // ignore + } + } else { results = alignmentTable.values(); } + return results; + } + protected void flushCache() {// throws AlignmentException for ( Alignment al : alignmentTable.values() ){ if ( al.getExtension( SVCNS, CACHED ) != ""