@Override public void hasChanged() { fireChangeEvent(new TimeSeriesChangeEvent(TimeSeriesChangeEvent.PROPERTY_AXIS_MAPPING_CHANGED, null, TimeSeriesImpl.this)); } }
@Override public void timeSeriesChanged(TimeSeriesChangeEvent event) { int type = event.getType(); if (type == TimeSeriesChangeEvent.PROPERTY_PRODUCT_LOCATIONS || type == TimeSeriesChangeEvent.PROPERTY_EO_VARIABLE_SELECTION) { graphModel.updateAnnotation(currentView.getRaster()); updateTimeSeries(event.getTimeSeries()); } else if (type == TimeSeriesChangeEvent.PROPERTY_INSITU_VARIABLE_SELECTION || type == TimeSeriesChangeEvent.PROPERTY_AXIS_MAPPING_CHANGED || type == TimeSeriesChangeEvent.START_TIME_PROPERTY_NAME || type == TimeSeriesChangeEvent.END_TIME_PROPERTY_NAME) { updateTimeSeries(event.getTimeSeries()); } }
@Override public void timeSeriesChanged(TimeSeriesChangeEvent event) { if (event.getType() == TimeSeriesChangeEvent.BAND_TO_BE_REMOVED) { Band band = (Band) event.getValue(); VisatApp app = VisatApp.getApp(); JInternalFrame internalFrame = app.findInternalFrame(band); if (internalFrame != null) { internalFrame.dispose(); } } else if (event.getType() == TimeSeriesChangeEvent.INSITU_SOURCE_CHANGED) { updateInsituVariablePanel(); } }
@Override public void timeSeriesChanged(TimeSeriesChangeEvent event) { final int type = event.getType(); if (type == TimeSeriesChangeEvent.START_TIME_PROPERTY_NAME || type == TimeSeriesChangeEvent.END_TIME_PROPERTY_NAME) { activeForm.updateFormControl(getSelectedProduct()); } else if (type == TimeSeriesChangeEvent.PROPERTY_INSITU_VARIABLE_SELECTION) { updateInsituPins(); } }
@Override public void setInsituVariableSelected(String variableName, boolean selected) { boolean hasChanged; if (selected) { hasChanged = insituVariablesSelections.add(variableName); } else { hasChanged = insituVariablesSelections.remove(variableName); } if (hasChanged) { fireChangeEvent(new TimeSeriesChangeEvent(TimeSeriesChangeEvent.PROPERTY_INSITU_VARIABLE_SELECTION, variableName, this)); } }
@Override public void setInsituSource(InsituSource insituSource) { if (this.insituSource != insituSource) { this.insituSource = insituSource; fireChangeEvent(new TimeSeriesChangeEvent(TimeSeriesChangeEvent.INSITU_SOURCE_CHANGED, this, this)); } }
fireChangeEvent(new TimeSeriesChangeEvent(TimeSeriesChangeEvent.PROPERTY_PRODUCT_LOCATIONS, productLocationList, this));
@Override public void removeProductLocation(ProductLocation productLocation) { // remove metadata final MetadataElement timeSeriesRootElement = tsProduct.getMetadataRoot().getElement(TIME_SERIES_ROOT_NAME); MetadataElement productLocationsElement = timeSeriesRootElement.getElement(PRODUCT_LOCATIONS); removeAttributeWithValue(PL_PATH, productLocation.getPath(), productLocationsElement); // remove variables for this productLocation updateAutoGrouping(); // TODO ??? final Band[] bands = tsProduct.getBands(); final MetadataElement sourceProductPaths = timeSeriesRootElement.getElement(SOURCE_PRODUCT_PATHS); for (Map.Entry<String, Product> productEntry : productLocation.getProducts(ProgressMonitor.NULL).entrySet()) { final Product product = productEntry.getValue(); removeAttributeWithValue(PL_PATH, productEntry.getKey(), sourceProductPaths); String timeString = formatTimeString(product); productTimeMap.remove(timeString); for (Band band : bands) { if (band.getName().endsWith(timeString)) { tsProduct.removeBand(band); } } } productLocation.closeProducts(); productLocationList.remove(productLocation); fireChangeEvent(new TimeSeriesChangeEvent(TimeSeriesChangeEvent.PROPERTY_PRODUCT_LOCATIONS, productLocationList, this)); }
@Override public void setEoVariableSelected(String variableName, boolean selected) { // set in metadata final MetadataElement[] variables = getVariableMetadataElements(); for (MetadataElement elem : variables) { if (elem.getAttributeString(VARIABLE_NAME).equals(variableName)) { elem.setAttributeString(VARIABLE_SELECTION, String.valueOf(selected)); } } // set in product if (selected) { for (Product product : getAllProducts(ProgressMonitor.NULL)) { addSpecifiedBandOfGivenProduct(variableName, product); } } else { final Band[] bands = tsProduct.getBands(); for (Band band : bands) { if (variableName.equals(rasterToVariableName(band.getName()))) { tsProduct.removeBand(band); } } } fireChangeEvent(new TimeSeriesChangeEvent(TimeSeriesChangeEvent.PROPERTY_EO_VARIABLE_SELECTION, null, this)); }
@Override public void setTimeCoding(TimeCoding timeCoding) { final ProductData.UTC startTime = timeCoding.getStartTime(); if (tsProduct.getStartTime().getAsCalendar().compareTo(startTime.getAsCalendar()) != 0) { tsProduct.setStartTime(startTime); fireChangeEvent(new TimeSeriesChangeEvent(TimeSeriesChangeEvent.START_TIME_PROPERTY_NAME, startTime, this)); } final ProductData.UTC endTime = timeCoding.getEndTime(); if (tsProduct.getEndTime().getAsCalendar().compareTo(endTime.getAsCalendar()) != 0) { tsProduct.setEndTime(endTime); fireChangeEvent(new TimeSeriesChangeEvent(TimeSeriesChangeEvent.END_TIME_PROPERTY_NAME, endTime, this)); } List<String> variables = getEoVariables(); for (Product product : getAllProducts(ProgressMonitor.NULL)) { for (String variable : variables) { if (isEoVariableSelected(variable)) { addSpecifiedBandOfGivenProduct(variable, product); } } } for (Band band : tsProduct.getBands()) { final TimeCoding bandTimeCoding = getRasterTimeMap().get(band); if (!timeCoding.contains(bandTimeCoding)) { fireChangeEvent(new TimeSeriesChangeEvent(TimeSeriesChangeEvent.BAND_TO_BE_REMOVED, band, this)); tsProduct.removeBand(band); } } }