@Override public WritableContentCache get() { return (InMemoryCacheImpl) new InMemoryCacheImpl().setSupportedTypeRepository(getSupportedTypeRepository()); }
@Override public void addCompositePhenomenonForOffering(String offering, Collection<String> compositePhenomenon) { CacheValidation.notNullOrEmpty(OFFERING, offering); CacheValidation.noNullOrEmptyValues(COMPOSITE_PHENOMENON, compositePhenomenon); LOG.trace("Adding composite phenomenon {} to offering {}", compositePhenomenon, offering); this.compositePhenomenonsForOffering.computeIfAbsent(offering, createSynchronizedSet()) .addAll(compositePhenomenon); addCompositePhenomenon(compositePhenomenon); }
cache.updatePhenomenonTime(phenomenonTime); cache.updateResultTime(resultTime); cache.addProcedure(procedure); cache.updatePhenomenonTimeForProcedure(procedure, phenomenonTime); cache.addProcedureForObservableProperty(observableProperty, procedure); cache.addObservablePropertyForResultTemplate(templateIdentifier, observableProperty); cache.addObservablePropertyForProcedure(procedure, observableProperty); cache.updateGlobalEnvelope(envelope); cache.addFeatureOfInterest(featureOfInterest); cache.addFeatureOfInterestForResultTemplate(templateIdentifier, featureOfInterest); cache.addProcedureForFeatureOfInterest(featureOfInterest, procedure); observation.getObservationConstellation().getOfferings() .forEach(offering -> cache.addFeatureOfInterestForOffering(offering, featureOfInterest)); }); observation.getObservationConstellation().getOfferings().stream().forEach(offering -> { cache.addOffering(offering); if (!cache.getHiddenChildProceduresForOffering(offering).contains(procedure)) { cache.addProcedureForOffering(offering, procedure); cache.addOfferingForProcedure(procedure, offering); cache.updateEnvelopeForOffering(offering, envelope); cache.updatePhenomenonTimeForOffering(offering, phenomenonTime); cache.updateResultTimeForOffering(offering, resultTime); cache.addOfferingForObservableProperty(observableProperty, offering);
cache.updatePhenomenonTime(phenomenonTime); cache.updateResultTime(resultTime); cache.updatePhenomenonTimeForProcedure(procedure, phenomenonTime); cache.updateGlobalEnvelope(envelope); cache.addFeatureOfInterest(featureOfInterest); cache.addPublishedFeatureOfInterest(featureOfInterest); cache.addPublishedFeatureOfInterest(featureOfInterest); if (sosSamplingFeature.isSetName()) { cache.addFeatureOfInterestIdentifierHumanReadableName(featureOfInterest, sosSamplingFeature.getFirstName().getValue()); cache.addProcedureForFeatureOfInterest(featureOfInterest, procedure); if (sosSamplingFeature.isSetSampledFeatures()) { for (AbstractFeature parentFeature : sosSamplingFeature.getSampledFeatures()) { cache.addParentFeature(sosSamplingFeature.getIdentifierCodeWithAuthority().getValue(), parentFeature.getIdentifierCodeWithAuthority().getValue()); cache.addPublishedFeatureOfInterest(parentFeature.getIdentifierCodeWithAuthority().getValue()); cache.addRelatedFeatureForOffering(offering, featureOfInterest); cache.addFeatureOfInterestForOffering(offering, featureOfInterest); if (!OGCConstants.UNKNOWN.equals(sosSamplingFeature.getFeatureType())) { cache.addFeatureOfInterestTypesForOffering(offering, sosSamplingFeature.getFeatureType()); cache.addOffering(offering); if (!cache.getHiddenChildProceduresForOffering(offering).contains(procedure)) { cache.addProcedureForOffering(offering, procedure); cache.addOfferingForProcedure(procedure, offering);
private void updateObservableProperties(InMemoryCacheImpl cache, AbstractPhenomenon observableProperty, String procedure) { // procedure <-> observable property cache.addProcedureForObservableProperty(observableProperty.getIdentifier(), procedure); cache.addObservablePropertyForProcedure(procedure, observableProperty.getIdentifier()); // offering <-> observable property for (String offering : request.getOfferings()) { cache.addOfferingForObservableProperty(observableProperty.getIdentifier(), offering); cache.addObservablePropertyForOffering(offering, observableProperty.getIdentifier()); } if (observableProperty instanceof OmCompositePhenomenon) { OmCompositePhenomenon parent = (OmCompositePhenomenon) observableProperty; cache.addCompositePhenomenon(parent.getIdentifier()); cache.addCompositePhenomenonForProcedure(procedure, parent.getIdentifier()); for (String offering : request.getOfferings()) { cache.addCompositePhenomenonForOffering(offering, parent.getIdentifier()); } for (OmObservableProperty child : parent) { cache.addObservablePropertyForCompositePhenomenon(parent.getIdentifier(), child.getIdentifier()); cache.addCompositePhenomenonForObservableProperty(child.getIdentifier(), parent.getIdentifier()); } } } }
cache.updatePhenomenonTime(phenomenonTime); cache.updateResultTime(resultTime); cache.addProcedure(procedure); cache.updatePhenomenonTimeForProcedure(procedure, phenomenonTime); cache.addProcedureForObservableProperty(observableProperty, procedure); cache.addObservablePropertyForResultTemplate(templateIdentifier, observableProperty); cache.addObservablePropertyForProcedure(procedure, observableProperty); cache.updateGlobalEnvelope(envelope); cache.addFeatureOfInterest(featureOfInterest); cache.addFeatureOfInterestForResultTemplate(templateIdentifier, featureOfInterest); cache.addProcedureForFeatureOfInterest(featureOfInterest, procedure); observation.getObservationConstellation().getOfferings() .forEach(offering -> cache.addFeatureOfInterestForOffering(offering, featureOfInterest)); }); observation.getObservationConstellation().getOfferings().stream().forEach(offering -> { cache.addOffering(offering); if (!cache.getHiddenChildProceduresForOffering(offering).contains(procedure)) { cache.addProcedureForOffering(offering, procedure); cache.addOfferingForProcedure(procedure, offering); cache.updateEnvelopeForOffering(offering, envelope); cache.updatePhenomenonTimeForOffering(offering, phenomenonTime); cache.updateResultTimeForOffering(offering, resultTime); cache.addOfferingForObservableProperty(observableProperty, offering);
cache.updatePhenomenonTime(phenomenonTime); cache.updateResultTime(resultTime); cache.updatePhenomenonTimeForProcedure(procedure, phenomenonTime); cache.updateGlobalEnvelope(envelope); cache.addFeatureOfInterest(featureOfInterest); cache.addPublishedFeatureOfInterest(featureOfInterest); cache.addPublishedFeatureOfInterest(featureOfInterest); if (sosSamplingFeature.isSetName()) { cache.addFeatureOfInterestIdentifierHumanReadableName(featureOfInterest, sosSamplingFeature.getFirstName().getValue()); cache.addProcedureForFeatureOfInterest(featureOfInterest, procedure); if (sosSamplingFeature.isSetSampledFeatures()) { for (AbstractFeature parentFeature : sosSamplingFeature.getSampledFeatures()) { cache.addParentFeature(sosSamplingFeature.getIdentifierCodeWithAuthority().getValue(), parentFeature.getIdentifierCodeWithAuthority().getValue()); cache.addPublishedFeatureOfInterest(parentFeature.getIdentifierCodeWithAuthority().getValue()); cache.addRelatedFeatureForOffering(offering, featureOfInterest); cache.addFeatureOfInterestForOffering(offering, featureOfInterest); if (!OGCConstants.UNKNOWN.equals(sosSamplingFeature.getFeatureType())) { cache.addFeatureOfInterestTypesForOffering(offering, sosSamplingFeature.getFeatureType()); cache.addOffering(offering); if (!cache.getHiddenChildProceduresForOffering(offering).contains(procedure)) { cache.addProcedureForOffering(offering, procedure); cache.addOfferingForProcedure(procedure, offering);
private void updateObservableProperties(InMemoryCacheImpl cache, AbstractPhenomenon observableProperty, String procedure) { // procedure <-> observable property cache.addProcedureForObservableProperty(observableProperty.getIdentifier(), procedure); cache.addObservablePropertyForProcedure(procedure, observableProperty.getIdentifier()); // offering <-> observable property for (String offering : request.getOfferings()) { cache.addOfferingForObservableProperty(observableProperty.getIdentifier(), offering); cache.addObservablePropertyForOffering(offering, observableProperty.getIdentifier()); } if (observableProperty instanceof OmCompositePhenomenon) { OmCompositePhenomenon parent = (OmCompositePhenomenon) observableProperty; cache.addCompositePhenomenon(parent.getIdentifier()); cache.addCompositePhenomenonForProcedure(procedure, parent.getIdentifier()); for (String offering : request.getOfferings()) { cache.addCompositePhenomenonForOffering(offering, parent.getIdentifier()); } for (OmObservableProperty child : parent) { cache.addObservablePropertyForCompositePhenomenon(parent.getIdentifier(), child.getIdentifier()); cache.addCompositePhenomenonForObservableProperty(child.getIdentifier(), parent.getIdentifier()); } } } }
@Override public void addObservablePropertiesForCompositePhenomenon(String compositePhenomenon, Collection<String> observableProperty) { CacheValidation.notNullOrEmpty(COMPOSITE_PHENOMENON, compositePhenomenon); CacheValidation.noNullOrEmptyValues(OBSERVABLE_PROPERTY, observableProperty); LOG.trace("Adding observable properties {} to composite phenomenon {}", observableProperty, compositePhenomenon); this.observablePropertiesForCompositePhenomenons.computeIfAbsent(compositePhenomenon, createSynchronizedSet()) .addAll(observableProperty); addCompositePhenomenon(compositePhenomenon); }
@Override public WritableContentCache get() { return (InMemoryCacheImpl) new InMemoryCacheImpl().setSupportedTypeRepository(getSupportedTypeRepository()); }
@Override public void addObservablePropertyForCompositePhenomenon(String compositePhenomenon, String observableProperty) { CacheValidation.notNullOrEmpty(COMPOSITE_PHENOMENON, compositePhenomenon); CacheValidation.notNullOrEmpty(OBSERVABLE_PROPERTY, observableProperty); LOG.trace("Adding observable property {} to composite phenomenon {}", observableProperty, compositePhenomenon); this.observablePropertiesForCompositePhenomenons.computeIfAbsent(compositePhenomenon, createSynchronizedSet()) .add(observableProperty); addCompositePhenomenon(compositePhenomenon); }
@Override public void execute() { try { SosWritableContentCache cache = (SosWritableContentCache) new InMemoryCacheImpl() .setSupportedTypeRepository(supportedTypeRepository); getCacheFeederDAO().updateCache(cache); setCache(cache); } catch (OwsExceptionReport ex) { fail(ex); } }
@Override public void addCompositePhenomenonForProcedure(String procedure, String compositePhenomenon) { CacheValidation.notNullOrEmpty(PROCEDURE, procedure); CacheValidation.notNullOrEmpty(COMPOSITE_PHENOMENON, compositePhenomenon); LOG.trace("Adding composite phenomenon {} to procedure {}", compositePhenomenon, procedure); this.compositePhenomenonsForProcedure.computeIfAbsent(procedure, createSynchronizedSet()) .add(compositePhenomenon); addCompositePhenomenon(compositePhenomenon); }
@Override public void execute() { try { SosWritableContentCache cache = (SosWritableContentCache) new InMemoryCacheImpl() .setSupportedTypeRepository(supportedTypeRepository); getCacheFeederDAO().updateCache(cache); setCache(cache); } catch (OwsExceptionReport ex) { fail(ex); } }
@Override public void addObservablePropertyForCompositePhenomenon(String compositePhenomenon, String observableProperty) { CacheValidation.notNullOrEmpty(COMPOSITE_PHENOMENON, compositePhenomenon); CacheValidation.notNullOrEmpty(OBSERVABLE_PROPERTY, observableProperty); LOG.trace("Adding observable property {} to composite phenomenon {}", observableProperty, compositePhenomenon); this.observablePropertiesForCompositePhenomenons.computeIfAbsent(compositePhenomenon, createSynchronizedSet()) .add(observableProperty); addCompositePhenomenon(compositePhenomenon); }
@Override public void addCompositePhenomenonForProcedure(String procedure, Collection<String> compositePhenomenon) { CacheValidation.notNullOrEmpty(PROCEDURE, procedure); CacheValidation.noNullOrEmptyValues(COMPOSITE_PHENOMENON, compositePhenomenon); LOG.trace("Adding composite phenomenon {} to procedure {}", compositePhenomenon, procedure); this.compositePhenomenonsForProcedure.computeIfAbsent(procedure, createSynchronizedSet()) .addAll(compositePhenomenon); addCompositePhenomenon(compositePhenomenon); }
@Override public void addCompositePhenomenonForProcedure(String procedure, Collection<String> compositePhenomenon) { CacheValidation.notNullOrEmpty(PROCEDURE, procedure); CacheValidation.noNullOrEmptyValues(COMPOSITE_PHENOMENON, compositePhenomenon); LOG.trace("Adding composite phenomenon {} to procedure {}", compositePhenomenon, procedure); this.compositePhenomenonsForProcedure.computeIfAbsent(procedure, createSynchronizedSet()) .addAll(compositePhenomenon); addCompositePhenomenon(compositePhenomenon); }
@Override public void addCompositePhenomenonForOffering(String offering, String compositePhenomenon) { CacheValidation.notNullOrEmpty(OFFERING, offering); CacheValidation.notNullOrEmpty(COMPOSITE_PHENOMENON, compositePhenomenon); LOG.trace("Adding composite phenomenon {} to offering {}", compositePhenomenon, offering); this.compositePhenomenonsForOffering.computeIfAbsent(offering, createSynchronizedSet()).add(compositePhenomenon); addCompositePhenomenon(compositePhenomenon); }
@Override public void addCompositePhenomenonForOffering(String offering, String compositePhenomenon) { CacheValidation.notNullOrEmpty(OFFERING, offering); CacheValidation.notNullOrEmpty(COMPOSITE_PHENOMENON, compositePhenomenon); LOG.trace("Adding composite phenomenon {} to offering {}", compositePhenomenon, offering); this.compositePhenomenonsForOffering.computeIfAbsent(offering, createSynchronizedSet()).add(compositePhenomenon); addCompositePhenomenon(compositePhenomenon); }
@Override public void addCompositePhenomenonForOffering(String offering, Collection<String> compositePhenomenon) { CacheValidation.notNullOrEmpty(OFFERING, offering); CacheValidation.noNullOrEmptyValues(COMPOSITE_PHENOMENON, compositePhenomenon); LOG.trace("Adding composite phenomenon {} to offering {}", compositePhenomenon, offering); this.compositePhenomenonsForOffering.computeIfAbsent(offering, createSynchronizedSet()) .addAll(compositePhenomenon); addCompositePhenomenon(compositePhenomenon); }