ingo@692: package de.intevation.flys.artifacts.model; ingo@692: felix@2206: /** 'Types' of facets. */ ingo@692: public interface FacetTypes { ingo@692: felix@4207: /** Static helper class to determine if a Facet name is of a generalized felix@4207: * 'type'. */ felix@4207: public static class IS { felix@1866: public static boolean WQ_KM(String type) { felix@1866: return type.equals(DISCHARGE_LONGITUDINAL_W) felix@1866: || type.equals(LONGITUDINAL_W); felix@1866: } felix@1866: public static boolean W_KM(String type) { felix@1866: return type.equals(STATIC_WKMS) felix@1866: || type.equals(HEIGHTMARKS_POINTS) felix@1866: || WQ_KM(type); felix@1866: } felix@2018: public static boolean AREA(String type) { felix@2018: return type.equals(AREA) felix@2018: || type.equals(CROSS_SECTION_AREA) felix@2018: || type.equals(LONGITUDINAL_SECTION_AREA); felix@2018: } felix@2104: public static boolean W(String type) { felix@2104: return type.equals(LONGITUDINAL_W) felix@2104: || type.equals(DISCHARGE_LONGITUDINAL_W) felix@2104: || type.equals(DURATION_W) felix@2104: || type.equals(STATIC_WKMS) felix@2104: || type.equals(STATIC_WQKMS_W); felix@2104: } felix@2104: public static boolean Q(String type) { felix@2104: return type.equals(LONGITUDINAL_Q) felix@2104: || type.equals(DISCHARGE_LONGITUDINAL_Q) felix@2104: || type.equals(DURATION_Q) felix@2104: || type.equals(STATIC_WQKMS_Q); felix@2104: } ingo@2706: public static boolean V(String type) { ingo@2706: return type.equals(FLOW_VELOCITY_MAINCHANNEL) ingo@2706: || type.equals(FLOW_VELOCITY_TOTALCHANNEL); ingo@2706: } ingo@2706: public static boolean T(String type) { ingo@2706: return type.equals(FLOW_VELOCITY_TAU); ingo@2706: } ingo@2715: public static boolean H(String type) { ingo@2715: return type.equals(MIDDLE_BED_HEIGHT_SINGLE) ingo@2715: || type.equals(MIDDLE_BED_HEIGHT_EPOCH); ingo@2715: } felix@2206: public static boolean MANUALPOINTS(String type) { felix@2206: return type.endsWith("manualpoints"); felix@2206: } felix@3197: public static boolean MANUALLINE(String type) { felix@3197: return type.endsWith("manualline"); felix@3197: } ingo@3077: public static boolean SQ_CURVE(String type) { ingo@3077: if (type.equals(SQ_A_CURVE) ingo@3077: || type.equals(SQ_B_CURVE) ingo@3077: || type.equals(SQ_C_CURVE) ingo@3077: || type.equals(SQ_D_CURVE) ingo@3077: || type.equals(SQ_E_CURVE) sascha@3552: || type.equals(SQ_F_CURVE) sascha@3552: || type.equals(SQ_A_OUTLIER_CURVE) sascha@3552: || type.equals(SQ_B_OUTLIER_CURVE) sascha@3552: || type.equals(SQ_C_OUTLIER_CURVE) sascha@3552: || type.equals(SQ_D_OUTLIER_CURVE) sascha@3552: || type.equals(SQ_E_OUTLIER_CURVE) sascha@3552: || type.equals(SQ_F_OUTLIER_CURVE) sascha@3552: ) ingo@3077: { ingo@3077: return true; ingo@3077: } ingo@3077: ingo@3077: return false; ingo@3077: } ingo@3077: public static boolean SQ_MEASUREMENT(String type) { ingo@3077: if (type.equals(SQ_A_MEASUREMENT) ingo@3077: || type.equals(SQ_B_MEASUREMENT) ingo@3077: || type.equals(SQ_C_MEASUREMENT) ingo@3077: || type.equals(SQ_D_MEASUREMENT) ingo@3077: || type.equals(SQ_E_MEASUREMENT) sascha@3552: || type.equals(SQ_F_MEASUREMENT) sascha@3552: || type.equals(SQ_A_OUTLIER_MEASUREMENT) sascha@3552: || type.equals(SQ_B_OUTLIER_MEASUREMENT) sascha@3552: || type.equals(SQ_C_OUTLIER_MEASUREMENT) sascha@3552: || type.equals(SQ_D_OUTLIER_MEASUREMENT) sascha@3552: || type.equals(SQ_E_OUTLIER_MEASUREMENT) sascha@3552: || type.equals(SQ_F_OUTLIER_MEASUREMENT) sascha@3552: ) ingo@3077: { ingo@3077: return true; ingo@3077: } ingo@3077: ingo@3077: return false; ingo@3077: } ingo@3077: public static boolean SQ_OUTLIER(String type) { ingo@3077: if (type.equals(SQ_A_OUTLIER) ingo@3077: || type.equals(SQ_B_OUTLIER) ingo@3077: || type.equals(SQ_C_OUTLIER) ingo@3077: || type.equals(SQ_D_OUTLIER) ingo@3077: || type.equals(SQ_E_OUTLIER) ingo@3077: || type.equals(SQ_F_OUTLIER)) ingo@3077: { ingo@3077: return true; ingo@3077: } ingo@3077: ingo@3077: return false; ingo@3077: } felix@1866: }; felix@1866: felix@4208: /** Available diagram/chart-types. This enum is evaluated at certain felix@4208: * places to iterate over chart-types to e.g. dynamically generate felix@4208: * Facet-names (ManualPoints for example). */ felix@2206: public enum ChartType { christian@3917: FD("fix_derivate_curve"), felix@2206: LS("longitudinal_section"), felix@2206: CS("cross_section"), felix@2206: DLS("discharge_longitudinal_section"), felix@2206: CDC("computed_discharge_curve"), felix@2295: DUC("duration_curve"), felix@2295: DIC("discharge_curve"), felix@2299: RC("reference_curve"), felix@2299: RCN("reference_curve_normalized"), raimund@2633: WD("wdifferences"), felix@3888: FWQC("fix_wq_curve"), felix@3888: FDWC("fix_deltawt_curve"), felix@3888: FLSC("fix_longitudinal_section_curve"), felix@3888: FDC("fix_derivate_curve"), raimund@2633: HD("historical_discharge"); felix@2206: felix@2206: private String chartTypeString; felix@2206: felix@2206: ChartType(String description) { felix@2206: this.chartTypeString = description; felix@2206: } felix@2206: christian@3883: @Override felix@2206: public String toString() { felix@2206: return chartTypeString; felix@2206: } felix@2206: } felix@2206: ingo@2683: String AREA = "area"; ingo@2683: String CROSS_SECTION_AREA = "cross_section.area"; ingo@2683: String LONGITUDINAL_SECTION_AREA = "longitudinal_section.area"; felix@2003: ingo@2683: String FLOODMAP_WSPLGEN = "floodmap.wsplgen"; ingo@2683: String FLOODMAP_BARRIERS = "floodmap.barriers"; ingo@2683: String FLOODMAP_USERSHAPE = "floodmap.usershape"; ingo@2683: String FLOODMAP_RIVERAXIS = "floodmap.riveraxis"; ingo@2683: String FLOODMAP_WMSBACKGROUND = "floodmap.wmsbackground"; ingo@2683: String FLOODMAP_KMS = "floodmap.kms"; ingo@2683: String FLOODMAP_QPS = "floodmap.qps"; ingo@2683: String FLOODMAP_HWS = "floodmap.hws"; ingo@2683: String FLOODMAP_HYDR_BOUNDARY = "floodmap.hydr_boundaries"; ingo@2683: String FLOODMAP_HYDR_BOUNDARY_POLY = "floodmap.hydr_boundaries_poly"; ingo@2683: String FLOODMAP_CATCHMENT = "floodmap.catchment"; ingo@2683: String FLOODMAP_FLOODPLAIN = "floodmap.floodplain"; ingo@2683: String FLOODMAP_LINES = "floodmap.lines"; ingo@2683: String FLOODMAP_BUILDINGS = "floodmap.buildings"; ingo@2683: String FLOODMAP_FIXPOINTS = "floodmap.fixpoints"; ingo@2683: String FLOODMAP_FLOODMAPS = "floodmap.floodmaps"; ingo@2684: String FLOODMAP_GAUGE_LOCATION = "floodmap.gauge_location"; ingo@2683: String FLOODMAP_EXTERNAL_WMS = "floodmap.externalwms"; ingo@935: ingo@692: String DISCHARGE_LONGITUDINAL_W = "discharge_longitudinal_section.w"; ingo@692: String DISCHARGE_LONGITUDINAL_Q = "discharge_longitudinal_section.q"; ingo@692: String DISCHARGE_LONGITUDINAL_C = "discharge_longitudinal_section.c"; ingo@692: ingo@693: String LONGITUDINAL_W = "longitudinal_section.w"; ingo@693: String LONGITUDINAL_Q = "longitudinal_section.q"; felix@2220: String LONGITUDINAL_ANNOTATION = "longitudinal_section.annotations"; felix@2206: String LONGITUDINAL_MANUALPOINTS = "longitudinal_section.manualpoints"; ingo@692: felix@1151: String W_DIFFERENCES = "w_differences"; felix@1151: ingo@692: String COMPUTED_DISCHARGE_Q = "computed_discharge_curve.q"; felix@1085: String COMPUTED_DISCHARGE_MAINVALUES_Q = "computed_discharge_curve.mainvalues.q"; felix@1085: String COMPUTED_DISCHARGE_MAINVALUES_W = "computed_discharge_curve.mainvalues.w"; ingo@692: felix@1808: String MAINVALUES_Q = "mainvalues.q"; felix@1808: String MAINVALUES_W = "mainvalues.w"; felix@1808: felix@1111: String CROSS_SECTION = "cross_section"; felix@1122: String CROSS_SECTION_WATER_LINE = "cross_section_water_line"; felix@1111: felix@2220: String HYK = "hyk"; felix@2130: sascha@722: String DISCHARGE_CURVE = "discharge_curve.curve"; bjoern@3997: String GAUGE_DISCHARGE_CURVE = "gauge_discharge_curve"; bjoern@4188: String GAUGE_DISCHARGE_CURVE_AT_EXPORT = "gauge_discharge_curve_at_export"; sascha@721: ingo@696: String DURATION_W = "duration_curve.w"; ingo@696: String DURATION_Q = "duration_curve.q"; felix@2163: String DURATION_MAINVALUES_Q = "duration_curve.mainvalues.q"; sascha@701: felix@2175: String MANUALPOINTS = "manualpoints"; felix@3197: String MANUALLINE = "manualline"; felix@2175: felix@3574: String QSECTOR = "qsectors"; felix@3574: felix@2220: String STATIC_WQ = "other.wq"; felix@1912: String STATIC_WQ_ANNOTATIONS = "other.wq.annotations"; felix@2220: String STATIC_WKMS = "other.wkms"; felix@4143: String STATIC_WKMS_MARKS = "other.wkms.marks"; felix@2220: String STATIC_WQKMS = "other.wqkms"; felix@2018: String STATIC_WQKMS_W = "other.wqkms.w"; felix@2018: String STATIC_WQKMS_Q = "other.wqkms.q"; felix@1918: String STATIC_WKMS_INTERPOL = "other.wkms.interpol"; felix@1723: felix@1815: String HEIGHTMARKS_POINTS = "heightmarks_points"; felix@1815: sascha@701: String CSV = "csv"; sascha@701: String WST = "wst"; sascha@731: String AT = "at"; raimund@2176: String PDF = "pdf"; sascha@710: sascha@710: String REPORT = "report"; ingo@2215: ingo@2311: String HISTORICAL_DISCHARGE_Q = "historical_discharge.historicalq"; ingo@2311: String HISTORICAL_DISCHARGE_Q_DIFF = "historical_discharge.historicalq.diff"; ingo@4232: String HISTORICAL_DISCHARGE_W = "historical_discharge.historicalw"; ingo@4232: String HISTORICAL_DISCHARGE_W_DIFF = "historical_discharge.historicalw.diff"; ingo@4241: String HISTORICAL_DISCHARGE_WQ_Q = "historical_discharge.wq.q"; ingo@4241: String HISTORICAL_DISCHARGE_WQ_W = "historical_discharge.wq.w"; ingo@4241: String HISTORICAL_DISCHARGE_WQ_CURVE = "historical_discharge.wq.curve"; felix@2220: felix@2220: String REFERENCE_CURVE = "reference_curve"; sascha@2277: String REFERENCE_CURVE_NORMALIZED = "reference_curve_normalized"; ingo@2706: ingo@2706: String FLOW_VELOCITY_MAINCHANNEL = "flow_velocity.mainchannel"; ingo@2706: String FLOW_VELOCITY_TOTALCHANNEL = "flow_velocity.totalchannel"; ingo@2706: String FLOW_VELOCITY_TAU = "flow_velocity.tau"; ingo@2706: String FLOW_VELOCITY_ANNOTATION = "flow_velocity.annotation"; ingo@2713: ingo@2715: String MIDDLE_BED_HEIGHT_SINGLE = "bedheight_middle.single"; ingo@2715: String MIDDLE_BED_HEIGHT_EPOCH = "bedheight_middle.epoch"; ingo@2715: String MIDDLE_BED_HEIGHT_ANNOTATION = "bedheight_middle.annotation"; sascha@3750: ingo@3766: String BED_QUALITY_POROSITY_TOPLAYER = "bed_longitudinal_section.porosity_toplayer"; ingo@3766: String BED_QUALITY_POROSITY_SUBLAYER = "bed_longitudinal_section.porosity_sublayer"; ingo@3766: String BED_QUALITY_BED_DIAMETER_TOPLAYER = "bed_longitudinal_section.bed_diameter_toplayer"; ingo@3766: String BED_QUALITY_BED_DIAMETER_SUBLAYER = "bed_longitudinal_section.bed_diameter_sublayer"; ingo@3762: String BED_QUALITY_SEDIMENT_DENSITY_TOPLAYER = "bed_longitudinal_section.sediment_density_toplayer"; ingo@3762: String BED_QUALITY_SEDIMENT_DENSITY_SUBLAYER = "bed_longitudinal_section.sediment_density_sublayer"; ingo@3766: String BED_QUALITY_BEDLOAD_DIAMETER = "bed_longitudinal_section.bedload_diameter"; felix@2743: raimund@3898: String BED_DIFFERENCE_YEAR = "bedheight_difference.year"; raimund@3898: String BED_DIFFERENCE_HEIGHT_YEAR = "bedheight_difference.height_year"; raimund@3898: String BED_DIFFERENCE_EPOCH = "bedheight_difference.epoch"; raimund@3898: String BED_DIFFERENCE_MORPH_WIDTH = "bedheight_difference.morph_width"; raimund@3898: String BED_DIFFERENCE_YEAR_HEIGHT1 = "bedheight_difference.year.height1"; raimund@3898: String BED_DIFFERENCE_YEAR_HEIGHT2 = "bedheight_difference.year.height2"; raimund@3898: String BED_DIFFERENCE_EPOCH_HEIGHT1 = "bedheight_difference.epoch.height1"; raimund@3898: String BED_DIFFERENCE_EPOCH_HEIGHT2 = "bedheight_difference.epoch.height2"; raimund@3898: rrenkert@4372: String SEDIMENT_LOAD_COARSE = "sedimentload.coarse"; rrenkert@4372: String SEDIMENT_LOAD_SAND = "sedimentload.sand"; rrenkert@4372: String SEDIMENT_LOAD_FINEMIDDLE = "sedimentload.finemiddle"; rrenkert@4372: String SEDIMENT_LOAD_SUSP_SAND = "sedimentload.susp_sand"; rrenkert@4372: String SEDIMENT_LOAD_SUSP_SAND_BED = "sedimentload.susp_sand_bed"; rrenkert@4372: String SEDIMENT_LOAD_SUSP_SEDIMENT = "sedimentload.susp_sediment"; rrenkert@4372: String SEDIMENT_LOAD_TOTAL = "sediemntload.total"; rrenkert@4372: raimund@3296: String SQ_OVERVIEW = "sq_overview"; raimund@3296: ingo@3072: String SQ_A_CURVE = "sq_a_curve"; ingo@3072: String SQ_A_MEASUREMENT = "sq_a_measurement"; ingo@3072: String SQ_A_OUTLIER = "sq_a_outlier"; sascha@3552: String SQ_A_OUTLIER_CURVE = "sq_a_outlier_curve"; sascha@3552: String SQ_A_OUTLIER_MEASUREMENT = "sq_a_outlier_measurement"; ingo@3072: ingo@3072: String SQ_B_CURVE = "sq_b_curve"; ingo@3072: String SQ_B_MEASUREMENT = "sq_b_measurement"; ingo@3072: String SQ_B_OUTLIER = "sq_b_outlier"; sascha@3552: String SQ_B_OUTLIER_CURVE = "sq_b_outlier_curve"; sascha@3552: String SQ_B_OUTLIER_MEASUREMENT = "sq_b_outlier_measurement"; ingo@3072: ingo@3072: String SQ_C_CURVE = "sq_c_curve"; ingo@3072: String SQ_C_MEASUREMENT = "sq_c_measurement"; ingo@3072: String SQ_C_OUTLIER = "sq_c_outlier"; sascha@3552: String SQ_C_OUTLIER_CURVE = "sq_c_outlier_curve"; sascha@3552: String SQ_C_OUTLIER_MEASUREMENT = "sq_c_outlier_measurement"; ingo@3072: ingo@3072: String SQ_D_CURVE = "sq_d_curve"; ingo@3072: String SQ_D_MEASUREMENT = "sq_d_measurement"; ingo@3072: String SQ_D_OUTLIER = "sq_d_outlier"; sascha@3552: String SQ_D_OUTLIER_CURVE = "sq_d_outlier_curve"; sascha@3552: String SQ_D_OUTLIER_MEASUREMENT = "sq_d_outlier_measurement"; ingo@3072: ingo@3072: String SQ_E_CURVE = "sq_e_curve"; ingo@3072: String SQ_E_MEASUREMENT = "sq_e_measurement"; ingo@3072: String SQ_E_OUTLIER = "sq_e_outlier"; sascha@3552: String SQ_E_OUTLIER_CURVE = "sq_e_outlier_curve"; sascha@3552: String SQ_E_OUTLIER_MEASUREMENT = "sq_e_outlier_curve_measurement"; ingo@3072: ingo@3072: String SQ_F_CURVE = "sq_f_curve"; ingo@3072: String SQ_F_MEASUREMENT = "sq_f_measurement"; ingo@3072: String SQ_F_OUTLIER = "sq_f_outlier"; sascha@3552: String SQ_F_OUTLIER_CURVE = "sq_f_outlier_curve"; sascha@3552: String SQ_F_OUTLIER_MEASUREMENT = "sq_f_outlier_measurement"; ingo@3072: felix@2743: String RELATIVE_POINT = "relativepoint"; raimund@3028: raimund@3043: String FIX_ANALYSIS_EVENTS_DWT = "fix_analysis_events_dwt"; raimund@3043: String FIX_ANALYSIS_EVENTS_LS = "fix_analysis_events_ls"; raimund@3043: String FIX_ANALYSIS_EVENTS_WQ = "fix_analysis_events_wq"; raimund@3043: raimund@3043: String FIX_REFERENCE_EVENTS_DWT = "fix_reference_events_dwt"; raimund@3043: String FIX_REFERENCE_EVENTS_LS = "fix_reference_events_ls"; raimund@3043: String FIX_REFERENCE_EVENTS_WQ = "fix_reference_events_wq"; christian@3907: String FIX_REFERENCE_PERIOD_DWT = "fix_reference_period_dwt"; raimund@3043: felix@3888: // Note that AVERAGE_DWT will get a postfix (e.g. ..._dwt_1) raimund@3043: String FIX_SECTOR_AVERAGE_DWT = "fix_sector_average_dwt"; raimund@3043: String FIX_SECTOR_AVERAGE_LS = "fix_sector_average_ls"; raimund@3043: String FIX_SECTOR_AVERAGE_WQ = "fix_sector_average_wq"; raimund@3169: String FIX_SECTOR_AVERAGE_LS_DEVIATION = "fix_sector_average_ls_deviation"; raimund@3043: raimund@3028: String FIX_WQ_CURVE = "fix_wq_curve"; raimund@3028: String FIX_OUTLIER = "fix_outlier"; raimund@3043: raimund@3043: String FIX_ANALYSIS_PERIODS_DWT = "fix_analysis_periods_dwt"; raimund@3043: String FIX_ANALYSIS_PERIODS_LS = "fix_analysis_periods_ls"; raimund@3043: String FIX_ANALYSIS_PERIODS_WQ = "fix_analysis_periods_wq"; raimund@3043: christian@3917: String FIX_DERIVATE_CURVE = "fix_derivate_curve"; raimund@3131: raimund@3131: String FIX_DEVIATION_DWT = "fix_deviation_dwt"; raimund@3169: String FIX_DEVIATION_LS = "fix_deviation_ls"; raimund@3169: sascha@3217: String FIX_PARAMETERS = "fix_parameters"; sascha@3633: raimund@3614: String STATIC_BEDHEIGHT = "static_bedheight"; felix@4313: felix@4313: String EXTREME_WQ_CURVE = "extreme_wq_curve"; felix@4357: felix@4357: String EXTREME_WQ_CURVE_BASE = "extreme_wq_curve_base"; ingo@692: } ingo@692: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :