OpenECHO
 All Classes Namespaces Files Functions Variables
SmartGasMeter.java
Go to the documentation of this file.
1 /*
2  * Copyright 2012 Sony Computer Science Laboratories, Inc. <info@kadecot.net>
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package com.sonycsl.echo.eoj.device.housingfacilities;
17 
25 
26 public abstract class SmartGasMeter extends DeviceObject {
27 
28  public static final short ECHO_CLASS_CODE = (short)0x0289;
29 
30  public static final byte EPC_GAS_METER_CLASSIFICATION_SETTING = (byte)0xE0;
31  public static final byte EPC_OWNER_CLASSIFICATION_SETTING = (byte)0xE1;
32  public static final byte EPC_MEASURED_CUMULATIVE_GAS_CONSUMPTION = (byte)0xE2;
33  public static final byte EPC_UNIT_FOR_MEASURED_CUMULATIVE_GAS_CONSUMPTION = (byte)0xE3;
34  public static final byte EPC_HISTORICAL_DATA_OF_MEASURED_CUMULATIVE_GAS_CONSUMPTION = (byte)0xE4;
36  public static final byte EPC_DETECTION_OF_ABNORMAL_VALUE_IN_METERING_DATA = (byte)0xE6;
37  public static final byte EPC_SECURITY_DATA_INFORMATION = (byte)0xE7;
38  public static final byte EPC_VALVE_CLOSURE_BY_THE_CENTER = (byte)0xE8;
40  public static final byte EPC_EMERGENCY_CLOSURE_OF_SHUTOFF_VALVE = (byte)0xEA;
41  public static final byte EPC_SHUTOFF_VALVE_STATUS = (byte)0xEB;
42  public static final byte EPC_HISTORICAL_DATA_OF_SHUTOFF_REASONS = (byte)0xEC;
43  public static final byte EPC_ID_NUMBER_SETTING = (byte)0xED;
44  public static final byte EPC_VERIFICATION_EXPIRATION_SETTING = (byte)0xEE;
46  public static final byte EPC_HISTORICAL_INFORMATION_OF_CUMULATIVE_GAS_CONSUMPTION = (byte)0xD1;
47 
48  @Override
49  protected void setupPropertyMaps() {
50  super.setupPropertyMaps();
51 
57  }
58 
59  @Override
60  public void onNew() {
61  super.onNew();
62  Echo.getEventListener().onNewSmartGasMeter(this);
63  }
64 
65  @Override
66  public short getEchoClassCode() {
67  return ECHO_CLASS_CODE;
68  }
69 
95  protected boolean setOperationStatus(byte[] edt) {return false;}
121  protected abstract byte[] getOperationStatus();
145  protected boolean setGasMeterClassificationSetting(byte[] edt) {return false;}
169  protected byte[] getGasMeterClassificationSetting() {return null;}
193  protected boolean isValidGasMeterClassificationSetting(byte[] edt) {
194  if(edt == null || !(edt.length == 1)) return false;
195  return true;
196  }
221  protected boolean setOwnerClassificationSetting(byte[] edt) {return false;}
246  protected byte[] getOwnerClassificationSetting() {return null;}
271  protected boolean isValidOwnerClassificationSetting(byte[] edt) {
272  if(edt == null || !(edt.length == 1)) return false;
273  return true;
274  }
299  protected abstract byte[] getMeasuredCumulativeGasConsumption();
324  protected boolean isValidMeasuredCumulativeGasConsumption(byte[] edt) {
325  if(edt == null || !(edt.length == 4)) return false;
326  return true;
327  }
357  protected byte[] getUnitForMeasuredCumulativeGasConsumption() {return null;}
387  protected boolean isValidUnitForMeasuredCumulativeGasConsumption(byte[] edt) {
388  if(edt == null || !(edt.length == 1)) return false;
389  return true;
390  }
419  protected byte[] getHistoricalDataOfMeasuredCumulativeGasConsumption() {return null;}
449  if(edt == null || !(edt.length == 194)) return false;
450  return true;
451  }
530  if(edt == null || !(edt.length == 1)) return false;
531  return true;
532  }
556  protected byte[] getDetectionOfAbnormalValueInMeteringData() {return null;}
580  protected boolean isValidDetectionOfAbnormalValueInMeteringData(byte[] edt) {
581  if(edt == null || !(edt.length == 1)) return false;
582  return true;
583  }
608  protected byte[] getSecurityDataInformation() {return null;}
633  protected boolean isValidSecurityDataInformation(byte[] edt) {
634  if(edt == null || !(edt.length == 10)) return false;
635  return true;
636  }
661  protected byte[] getValveClosureByTheCenter() {return null;}
686  protected boolean isValidValveClosureByTheCenter(byte[] edt) {
687  if(edt == null || !(edt.length == 1)) return false;
688  return true;
689  }
740  if(edt == null || !(edt.length == 1)) return false;
741  return true;
742  }
767  protected byte[] getEmergencyClosureOfShutoffValve() {return null;}
792  protected boolean isValidEmergencyClosureOfShutoffValve(byte[] edt) {
793  if(edt == null || !(edt.length == 1)) return false;
794  return true;
795  }
819  protected byte[] getShutoffValveStatus() {return null;}
843  protected boolean isValidShutoffValveStatus(byte[] edt) {
844  if(edt == null || !(edt.length == 1)) return false;
845  return true;
846  }
872  protected byte[] getHistoricalDataOfShutoffReasons() {return null;}
898  protected boolean isValidHistoricalDataOfShutoffReasons(byte[] edt) {
899  if(edt == null || !(edt.length == 3)) return false;
900  return true;
901  }
926  protected boolean setIdNumberSetting(byte[] edt) {return false;}
951  protected byte[] getIdNumberSetting() {return null;}
976  protected boolean isValidIdNumberSetting(byte[] edt) {
977  if(edt == null || !(edt.length == 6)) return false;
978  return true;
979  }
1004  protected boolean setVerificationExpirationSetting(byte[] edt) {return false;}
1029  protected byte[] getVerificationExpirationSetting() {return null;}
1054  protected boolean isValidVerificationExpirationSetting(byte[] edt) {
1055  if(edt == null || !(edt.length == 6)) return false;
1056  return true;
1057  }
1120  if(edt == null || !(edt.length == 11)) return false;
1121  return true;
1122  }
1166  if(edt == null || !(edt.length == 109)) return false;
1167  return true;
1168  }
1169 
1170  @Override
1171  protected synchronized boolean setProperty(EchoProperty property) {
1172  boolean success = super.setProperty(property);
1173  if(success) return success;
1174 
1175  switch(property.epc) {
1179  case EPC_ID_NUMBER_SETTING : return setIdNumberSetting(property.edt);
1181  default : return false;
1182  }
1183  }
1184 
1185  @Override
1186  protected synchronized byte[] getProperty(byte epc) {
1187  byte[] edt = super.getProperty(epc);
1188  if(edt != null) return edt;
1189 
1190  switch(epc) {
1204  case EPC_ID_NUMBER_SETTING : return getIdNumberSetting();
1207  default : return null;
1208  }
1209  }
1210 
1211  @Override
1212  protected synchronized boolean isValidProperty(EchoProperty property) {
1213  boolean valid = super.isValidProperty(property);
1214  if(valid) return valid;
1215 
1216  switch(property.epc) {
1228  case EPC_SHUTOFF_VALVE_STATUS : return isValidShutoffValveStatus(property.edt);
1230  case EPC_ID_NUMBER_SETTING : return isValidIdNumberSetting(property.edt);
1234  default : return false;
1235  }
1236  }
1237 
1238  @Override
1239  public Setter set() {
1240  return set(true);
1241  }
1242 
1243  @Override
1244  public Setter set(boolean responseRequired) {
1245  return new Setter(getEchoClassCode(), getInstanceCode()
1246  , getNode().getAddressStr(), responseRequired);
1247  }
1248 
1249  @Override
1250  public Getter get() {
1251  return new Getter(getEchoClassCode(), getInstanceCode()
1252  , getNode().getAddressStr());
1253  }
1254 
1255  @Override
1256  public Informer inform() {
1257  return inform(isSelfObject());
1258  }
1259 
1260  @Override
1261  protected Informer inform(boolean multicast) {
1262  String address;
1263  if(multicast) {
1264  address = EchoSocket.MULTICAST_ADDRESS;
1265  } else {
1266  address = getNode().getAddressStr();
1267  }
1268  return new Informer(getEchoClassCode(), getInstanceCode()
1269  , address, isSelfObject());
1270  }
1271 
1272  public static class Receiver extends DeviceObject.Receiver {
1273 
1274  @Override
1275  protected boolean onSetProperty(EchoObject eoj, short tid, byte esv,
1276  EchoProperty property, boolean success) {
1277  boolean ret = super.onSetProperty(eoj, tid, esv, property, success);
1278  if(ret) return true;
1279 
1280  switch(property.epc) {
1282  onSetGasMeterClassificationSetting(eoj, tid, esv, property, success);
1283  return true;
1285  onSetOwnerClassificationSetting(eoj, tid, esv, property, success);
1286  return true;
1288  onSetDaySettingForWhichTheHistoricalDataOfMeasuredCumulativeGasConsumptionIsToBeRetrieved(eoj, tid, esv, property, success);
1289  return true;
1290  case EPC_ID_NUMBER_SETTING :
1291  onSetIdNumberSetting(eoj, tid, esv, property, success);
1292  return true;
1294  onSetVerificationExpirationSetting(eoj, tid, esv, property, success);
1295  return true;
1296  default :
1297  return false;
1298  }
1299  }
1300 
1301  @Override
1302  protected boolean onGetProperty(EchoObject eoj, short tid, byte esv,
1303  EchoProperty property, boolean success) {
1304  boolean ret = super.onGetProperty(eoj, tid, esv, property, success);
1305  if(ret) return true;
1306 
1307  switch(property.epc) {
1309  onGetGasMeterClassificationSetting(eoj, tid, esv, property, success);
1310  return true;
1312  onGetOwnerClassificationSetting(eoj, tid, esv, property, success);
1313  return true;
1315  onGetMeasuredCumulativeGasConsumption(eoj, tid, esv, property, success);
1316  return true;
1318  onGetUnitForMeasuredCumulativeGasConsumption(eoj, tid, esv, property, success);
1319  return true;
1321  onGetHistoricalDataOfMeasuredCumulativeGasConsumption(eoj, tid, esv, property, success);
1322  return true;
1324  onGetDaySettingForWhichTheHistoricalDataOfMeasuredCumulativeGasConsumptionIsToBeRetrieved(eoj, tid, esv, property, success);
1325  return true;
1327  onGetDetectionOfAbnormalValueInMeteringData(eoj, tid, esv, property, success);
1328  return true;
1330  onGetSecurityDataInformation(eoj, tid, esv, property, success);
1331  return true;
1333  onGetValveClosureByTheCenter(eoj, tid, esv, property, success);
1334  return true;
1336  onGetPermissionFromTheCenterToReopenTheValveClosedByTheCenter(eoj, tid, esv, property, success);
1337  return true;
1339  onGetEmergencyClosureOfShutoffValve(eoj, tid, esv, property, success);
1340  return true;
1341  case EPC_SHUTOFF_VALVE_STATUS :
1342  onGetShutoffValveStatus(eoj, tid, esv, property, success);
1343  return true;
1345  onGetHistoricalDataOfShutoffReasons(eoj, tid, esv, property, success);
1346  return true;
1347  case EPC_ID_NUMBER_SETTING :
1348  onGetIdNumberSetting(eoj, tid, esv, property, success);
1349  return true;
1351  onGetVerificationExpirationSetting(eoj, tid, esv, property, success);
1352  return true;
1354  onGetMeasuredCumulativeGasConsumptionInformationWithDateAndTime(eoj, tid, esv, property, success);
1355  return true;
1356  default :
1357  return false;
1358  }
1359  }
1360 
1384  protected void onSetGasMeterClassificationSetting(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1408  protected void onGetGasMeterClassificationSetting(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1433  protected void onSetOwnerClassificationSetting(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1458  protected void onGetOwnerClassificationSetting(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1483  protected void onGetMeasuredCumulativeGasConsumption(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1513  protected void onGetUnitForMeasuredCumulativeGasConsumption(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1542  protected void onGetHistoricalDataOfMeasuredCumulativeGasConsumption(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1568  protected void onSetDaySettingForWhichTheHistoricalDataOfMeasuredCumulativeGasConsumptionIsToBeRetrieved(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1594  protected void onGetDaySettingForWhichTheHistoricalDataOfMeasuredCumulativeGasConsumptionIsToBeRetrieved(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1618  protected void onGetDetectionOfAbnormalValueInMeteringData(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1643  protected void onGetSecurityDataInformation(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1668  protected void onGetValveClosureByTheCenter(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1693  protected void onGetPermissionFromTheCenterToReopenTheValveClosedByTheCenter(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1718  protected void onGetEmergencyClosureOfShutoffValve(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1742  protected void onGetShutoffValveStatus(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1768  protected void onGetHistoricalDataOfShutoffReasons(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1793  protected void onSetIdNumberSetting(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1818  protected void onGetIdNumberSetting(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1843  protected void onSetVerificationExpirationSetting(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1868  protected void onGetVerificationExpirationSetting(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1899  protected void onGetMeasuredCumulativeGasConsumptionInformationWithDateAndTime(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1900  }
1901 
1902  public static class Setter extends DeviceObject.Setter {
1903  public Setter(short dstEchoClassCode, byte dstEchoInstanceCode
1904  , String dstEchoAddress, boolean responseRequired) {
1905  super(dstEchoClassCode, dstEchoInstanceCode
1906  , dstEchoAddress, responseRequired);
1907  }
1908 
1909  @Override
1910  public Setter reqSetProperty(byte epc, byte[] edt) {
1911  return (Setter)super.reqSetProperty(epc, edt);
1912  }
1913 
1914  @Override
1915  public Setter reqSetOperationStatus(byte[] edt) {
1916  return (Setter)super.reqSetOperationStatus(edt);
1917  }
1918  @Override
1919  public Setter reqSetInstallationLocation(byte[] edt) {
1920  return (Setter)super.reqSetInstallationLocation(edt);
1921  }
1922  @Override
1923  public Setter reqSetCurrentLimitSetting(byte[] edt) {
1924  return (Setter)super.reqSetCurrentLimitSetting(edt);
1925  }
1926  @Override
1927  public Setter reqSetPowerSavingOperationSetting(byte[] edt) {
1928  return (Setter)super.reqSetPowerSavingOperationSetting(edt);
1929  }
1930  @Override
1931  public Setter reqSetRemoteControlSetting(byte[] edt) {
1932  return (Setter)super.reqSetRemoteControlSetting(edt);
1933  }
1934  @Override
1935  public Setter reqSetCurrentTimeSetting(byte[] edt) {
1936  return (Setter)super.reqSetCurrentTimeSetting(edt);
1937  }
1938  @Override
1939  public Setter reqSetCurrentDateSetting(byte[] edt) {
1940  return (Setter)super.reqSetCurrentDateSetting(edt);
1941  }
1942  @Override
1943  public Setter reqSetPowerLimitSetting(byte[] edt) {
1944  return (Setter)super.reqSetPowerLimitSetting(edt);
1945  }
1946 
1970  public Setter reqSetGasMeterClassificationSetting(byte[] edt) {
1971  reqSetProperty(EPC_GAS_METER_CLASSIFICATION_SETTING, edt);
1972  return this;
1973  }
1998  public Setter reqSetOwnerClassificationSetting(byte[] edt) {
1999  reqSetProperty(EPC_OWNER_CLASSIFICATION_SETTING, edt);
2000  return this;
2001  }
2027  public Setter reqSetDaySettingForWhichTheHistoricalDataOfMeasuredCumulativeGasConsumptionIsToBeRetrieved(byte[] edt) {
2029  return this;
2030  }
2055  public Setter reqSetIdNumberSetting(byte[] edt) {
2056  reqSetProperty(EPC_ID_NUMBER_SETTING, edt);
2057  return this;
2058  }
2083  public Setter reqSetVerificationExpirationSetting(byte[] edt) {
2084  reqSetProperty(EPC_VERIFICATION_EXPIRATION_SETTING, edt);
2085  return this;
2086  }
2087  }
2088 
2089  public static class Getter extends DeviceObject.Getter {
2090  public Getter(short dstEchoClassCode, byte dstEchoInstanceCode
2091  , String dstEchoAddress) {
2092  super(dstEchoClassCode, dstEchoInstanceCode
2093  , dstEchoAddress);
2094  }
2095 
2096  @Override
2097  public Getter reqGetProperty(byte epc) {
2098  return (Getter)super.reqGetProperty(epc);
2099  }
2100 
2101  @Override
2102  public Getter reqGetOperationStatus() {
2103  return (Getter)super.reqGetOperationStatus();
2104  }
2105  @Override
2106  public Getter reqGetInstallationLocation() {
2107  return (Getter)super.reqGetInstallationLocation();
2108  }
2109  @Override
2110  public Getter reqGetStandardVersionInformation() {
2111  return (Getter)super.reqGetStandardVersionInformation();
2112  }
2113  @Override
2114  public Getter reqGetIdentificationNumber() {
2115  return (Getter)super.reqGetIdentificationNumber();
2116  }
2117  @Override
2118  public Getter reqGetMeasuredInstantaneousPowerConsumption() {
2119  return (Getter)super.reqGetMeasuredInstantaneousPowerConsumption();
2120  }
2121  @Override
2122  public Getter reqGetMeasuredCumulativePowerConsumption() {
2123  return (Getter)super.reqGetMeasuredCumulativePowerConsumption();
2124  }
2125  @Override
2126  public Getter reqGetManufacturersFaultCode() {
2127  return (Getter)super.reqGetManufacturersFaultCode();
2128  }
2129  @Override
2130  public Getter reqGetCurrentLimitSetting() {
2131  return (Getter)super.reqGetCurrentLimitSetting();
2132  }
2133  @Override
2134  public Getter reqGetFaultStatus() {
2135  return (Getter)super.reqGetFaultStatus();
2136  }
2137  @Override
2138  public Getter reqGetFaultDescription() {
2139  return (Getter)super.reqGetFaultDescription();
2140  }
2141  @Override
2142  public Getter reqGetManufacturerCode() {
2143  return (Getter)super.reqGetManufacturerCode();
2144  }
2145  @Override
2146  public Getter reqGetBusinessFacilityCode() {
2147  return (Getter)super.reqGetBusinessFacilityCode();
2148  }
2149  @Override
2150  public Getter reqGetProductCode() {
2151  return (Getter)super.reqGetProductCode();
2152  }
2153  @Override
2154  public Getter reqGetProductionNumber() {
2155  return (Getter)super.reqGetProductionNumber();
2156  }
2157  @Override
2158  public Getter reqGetProductionDate() {
2159  return (Getter)super.reqGetProductionDate();
2160  }
2161  @Override
2162  public Getter reqGetPowerSavingOperationSetting() {
2163  return (Getter)super.reqGetPowerSavingOperationSetting();
2164  }
2165  @Override
2166  public Getter reqGetRemoteControlSetting() {
2167  return (Getter)super.reqGetRemoteControlSetting();
2168  }
2169  @Override
2170  public Getter reqGetCurrentTimeSetting() {
2171  return (Getter)super.reqGetCurrentTimeSetting();
2172  }
2173  @Override
2174  public Getter reqGetCurrentDateSetting() {
2175  return (Getter)super.reqGetCurrentDateSetting();
2176  }
2177  @Override
2178  public Getter reqGetPowerLimitSetting() {
2179  return (Getter)super.reqGetPowerLimitSetting();
2180  }
2181  @Override
2182  public Getter reqGetCumulativeOperatingTime() {
2183  return (Getter)super.reqGetCumulativeOperatingTime();
2184  }
2185  @Override
2186  public Getter reqGetStatusChangeAnnouncementPropertyMap() {
2187  return (Getter)super.reqGetStatusChangeAnnouncementPropertyMap();
2188  }
2189  @Override
2190  public Getter reqGetSetPropertyMap() {
2191  return (Getter)super.reqGetSetPropertyMap();
2192  }
2193  @Override
2194  public Getter reqGetGetPropertyMap() {
2195  return (Getter)super.reqGetGetPropertyMap();
2196  }
2197 
2221  public Getter reqGetGasMeterClassificationSetting() {
2222  reqGetProperty(EPC_GAS_METER_CLASSIFICATION_SETTING);
2223  return this;
2224  }
2249  public Getter reqGetOwnerClassificationSetting() {
2250  reqGetProperty(EPC_OWNER_CLASSIFICATION_SETTING);
2251  return this;
2252  }
2277  public Getter reqGetMeasuredCumulativeGasConsumption() {
2279  return this;
2280  }
2310  public Getter reqGetUnitForMeasuredCumulativeGasConsumption() {
2312  return this;
2313  }
2342  public Getter reqGetHistoricalDataOfMeasuredCumulativeGasConsumption() {
2344  return this;
2345  }
2371  public Getter reqGetDaySettingForWhichTheHistoricalDataOfMeasuredCumulativeGasConsumptionIsToBeRetrieved() {
2373  return this;
2374  }
2398  public Getter reqGetDetectionOfAbnormalValueInMeteringData() {
2400  return this;
2401  }
2426  public Getter reqGetSecurityDataInformation() {
2427  reqGetProperty(EPC_SECURITY_DATA_INFORMATION);
2428  return this;
2429  }
2454  public Getter reqGetValveClosureByTheCenter() {
2455  reqGetProperty(EPC_VALVE_CLOSURE_BY_THE_CENTER);
2456  return this;
2457  }
2482  public Getter reqGetPermissionFromTheCenterToReopenTheValveClosedByTheCenter() {
2484  return this;
2485  }
2510  public Getter reqGetEmergencyClosureOfShutoffValve() {
2512  return this;
2513  }
2537  public Getter reqGetShutoffValveStatus() {
2538  reqGetProperty(EPC_SHUTOFF_VALVE_STATUS);
2539  return this;
2540  }
2566  public Getter reqGetHistoricalDataOfShutoffReasons() {
2568  return this;
2569  }
2594  public Getter reqGetIdNumberSetting() {
2595  reqGetProperty(EPC_ID_NUMBER_SETTING);
2596  return this;
2597  }
2622  public Getter reqGetVerificationExpirationSetting() {
2623  reqGetProperty(EPC_VERIFICATION_EXPIRATION_SETTING);
2624  return this;
2625  }
2656  public Getter reqGetMeasuredCumulativeGasConsumptionInformationWithDateAndTime() {
2658  return this;
2659  }
2660  }
2661 
2662  public static class Informer extends DeviceObject.Informer {
2663  public Informer(short echoClassCode, byte echoInstanceCode
2664  , String dstEchoAddress, boolean isSelfObject) {
2665  super(echoClassCode, echoInstanceCode
2666  , dstEchoAddress, isSelfObject);
2667  }
2668 
2669  @Override
2670  public Informer reqInformProperty(byte epc) {
2671  return (Informer)super.reqInformProperty(epc);
2672  }
2673  @Override
2674  public Informer reqInformOperationStatus() {
2675  return (Informer)super.reqInformOperationStatus();
2676  }
2677  @Override
2678  public Informer reqInformInstallationLocation() {
2679  return (Informer)super.reqInformInstallationLocation();
2680  }
2681  @Override
2682  public Informer reqInformStandardVersionInformation() {
2683  return (Informer)super.reqInformStandardVersionInformation();
2684  }
2685  @Override
2686  public Informer reqInformIdentificationNumber() {
2687  return (Informer)super.reqInformIdentificationNumber();
2688  }
2689  @Override
2690  public Informer reqInformMeasuredInstantaneousPowerConsumption() {
2691  return (Informer)super.reqInformMeasuredInstantaneousPowerConsumption();
2692  }
2693  @Override
2694  public Informer reqInformMeasuredCumulativePowerConsumption() {
2695  return (Informer)super.reqInformMeasuredCumulativePowerConsumption();
2696  }
2697  @Override
2698  public Informer reqInformManufacturersFaultCode() {
2699  return (Informer)super.reqInformManufacturersFaultCode();
2700  }
2701  @Override
2702  public Informer reqInformCurrentLimitSetting() {
2703  return (Informer)super.reqInformCurrentLimitSetting();
2704  }
2705  @Override
2706  public Informer reqInformFaultStatus() {
2707  return (Informer)super.reqInformFaultStatus();
2708  }
2709  @Override
2710  public Informer reqInformFaultDescription() {
2711  return (Informer)super.reqInformFaultDescription();
2712  }
2713  @Override
2714  public Informer reqInformManufacturerCode() {
2715  return (Informer)super.reqInformManufacturerCode();
2716  }
2717  @Override
2718  public Informer reqInformBusinessFacilityCode() {
2719  return (Informer)super.reqInformBusinessFacilityCode();
2720  }
2721  @Override
2722  public Informer reqInformProductCode() {
2723  return (Informer)super.reqInformProductCode();
2724  }
2725  @Override
2726  public Informer reqInformProductionNumber() {
2727  return (Informer)super.reqInformProductionNumber();
2728  }
2729  @Override
2730  public Informer reqInformProductionDate() {
2731  return (Informer)super.reqInformProductionDate();
2732  }
2733  @Override
2734  public Informer reqInformPowerSavingOperationSetting() {
2735  return (Informer)super.reqInformPowerSavingOperationSetting();
2736  }
2737  @Override
2738  public Informer reqInformRemoteControlSetting() {
2739  return (Informer)super.reqInformRemoteControlSetting();
2740  }
2741  @Override
2742  public Informer reqInformCurrentTimeSetting() {
2743  return (Informer)super.reqInformCurrentTimeSetting();
2744  }
2745  @Override
2746  public Informer reqInformCurrentDateSetting() {
2747  return (Informer)super.reqInformCurrentDateSetting();
2748  }
2749  @Override
2750  public Informer reqInformPowerLimitSetting() {
2751  return (Informer)super.reqInformPowerLimitSetting();
2752  }
2753  @Override
2754  public Informer reqInformCumulativeOperatingTime() {
2755  return (Informer)super.reqInformCumulativeOperatingTime();
2756  }
2757  @Override
2758  public Informer reqInformStatusChangeAnnouncementPropertyMap() {
2759  return (Informer)super.reqInformStatusChangeAnnouncementPropertyMap();
2760  }
2761  @Override
2762  public Informer reqInformSetPropertyMap() {
2763  return (Informer)super.reqInformSetPropertyMap();
2764  }
2765  @Override
2766  public Informer reqInformGetPropertyMap() {
2767  return (Informer)super.reqInformGetPropertyMap();
2768  }
2769 
2793  public Informer reqInformGasMeterClassificationSetting() {
2794  reqInformProperty(EPC_GAS_METER_CLASSIFICATION_SETTING);
2795  return this;
2796  }
2821  public Informer reqInformOwnerClassificationSetting() {
2822  reqInformProperty(EPC_OWNER_CLASSIFICATION_SETTING);
2823  return this;
2824  }
2849  public Informer reqInformMeasuredCumulativeGasConsumption() {
2850  reqInformProperty(EPC_MEASURED_CUMULATIVE_GAS_CONSUMPTION);
2851  return this;
2852  }
2882  public Informer reqInformUnitForMeasuredCumulativeGasConsumption() {
2884  return this;
2885  }
2914  public Informer reqInformHistoricalDataOfMeasuredCumulativeGasConsumption() {
2916  return this;
2917  }
2943  public Informer reqInformDaySettingForWhichTheHistoricalDataOfMeasuredCumulativeGasConsumptionIsToBeRetrieved() {
2945  return this;
2946  }
2970  public Informer reqInformDetectionOfAbnormalValueInMeteringData() {
2972  return this;
2973  }
2998  public Informer reqInformSecurityDataInformation() {
2999  reqInformProperty(EPC_SECURITY_DATA_INFORMATION);
3000  return this;
3001  }
3026  public Informer reqInformValveClosureByTheCenter() {
3027  reqInformProperty(EPC_VALVE_CLOSURE_BY_THE_CENTER);
3028  return this;
3029  }
3054  public Informer reqInformPermissionFromTheCenterToReopenTheValveClosedByTheCenter() {
3056  return this;
3057  }
3082  public Informer reqInformEmergencyClosureOfShutoffValve() {
3083  reqInformProperty(EPC_EMERGENCY_CLOSURE_OF_SHUTOFF_VALVE);
3084  return this;
3085  }
3109  public Informer reqInformShutoffValveStatus() {
3110  reqInformProperty(EPC_SHUTOFF_VALVE_STATUS);
3111  return this;
3112  }
3138  public Informer reqInformHistoricalDataOfShutoffReasons() {
3139  reqInformProperty(EPC_HISTORICAL_DATA_OF_SHUTOFF_REASONS);
3140  return this;
3141  }
3166  public Informer reqInformIdNumberSetting() {
3167  reqInformProperty(EPC_ID_NUMBER_SETTING);
3168  return this;
3169  }
3194  public Informer reqInformVerificationExpirationSetting() {
3195  reqInformProperty(EPC_VERIFICATION_EXPIRATION_SETTING);
3196  return this;
3197  }
3228  public Informer reqInformMeasuredCumulativeGasConsumptionInformationWithDateAndTime() {
3230  return this;
3231  }
3232  }
3233 
3234  public static class Proxy extends SmartGasMeter {
3235  public Proxy(byte instanceCode) {
3236  super();
3237  mEchoInstanceCode = instanceCode;
3238  }
3239  @Override
3240  public byte getInstanceCode() {
3241  return mEchoInstanceCode;
3242  }
3243  @Override
3244  protected byte[] getOperationStatus() {return null;}
3245  @Override
3246  protected boolean setInstallationLocation(byte[] edt) {return false;}
3247  @Override
3248  protected byte[] getInstallationLocation() {return null;}
3249  @Override
3250  protected byte[] getStandardVersionInformation() {return null;}
3251  @Override
3252  protected byte[] getFaultStatus() {return null;}
3253  @Override
3254  protected byte[] getManufacturerCode() {return null;}
3255  @Override
3256  protected byte[] getMeasuredCumulativeGasConsumption() {return null;}
3257  @Override
3258  protected byte[] getMeasuredCumulativeGasConsumptionInformationWithDateAndTime() {return null;}
3259  }
3260 
3261  public static Setter setG() {
3262  return setG((byte)0);
3263  }
3264 
3265  public static Setter setG(byte instanceCode) {
3266  return setG(instanceCode, true);
3267  }
3268 
3269  public static Setter setG(boolean responseRequired) {
3270  return setG((byte)0, responseRequired);
3271  }
3272 
3273  public static Setter setG(byte instanceCode, boolean responseRequired) {
3274  return new Setter(ECHO_CLASS_CODE, instanceCode
3275  , EchoSocket.MULTICAST_ADDRESS, responseRequired);
3276  }
3277 
3278  public static Getter getG() {
3279  return getG((byte)0);
3280  }
3281 
3282  public static Getter getG(byte instanceCode) {
3283  return new Getter(ECHO_CLASS_CODE, instanceCode
3285  }
3286 
3287  public static Informer informG() {
3288  return informG((byte)0);
3289  }
3290 
3291  public static Informer informG(byte instanceCode) {
3292  return new Informer(ECHO_CLASS_CODE, instanceCode
3293  , EchoSocket.MULTICAST_ADDRESS, false);
3294  }
3295 
3296 }
final void removeSetProperty(byte epc)
Definition: EchoObject.java:98
final void addStatusChangeAnnouncementProperty(byte epc)
Definition: EchoObject.java:71
boolean isValidDaySettingForWhichTheHistoricalDataOfMeasuredCumulativeGasConsumptionIsToBeRetrieved(byte[] edt)
final void addGetProperty(byte epc)
boolean setDaySettingForWhichTheHistoricalDataOfMeasuredCumulativeGasConsumptionIsToBeRetrieved(byte[] edt)
synchronized boolean isValidProperty(EchoProperty property)
synchronized boolean setProperty(EchoProperty property)
static Setter setG(byte instanceCode, boolean responseRequired)
static final byte EPC_DAY_SETTING_FOR_WHICH_THE_HISTORICAL_DATA_OF_MEASURED_CUMULATIVE_GAS_CONSUMPTION_IS_TO_BE_RETRIEVED
abstract boolean setInstallationLocation(byte[] edt)
static final String MULTICAST_ADDRESS
Definition: EchoSocket.java:53