OpenECHO
 All Classes Namespaces Files Functions Variables
SmartElectricEnergyMeter.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 SmartElectricEnergyMeter extends DeviceObject {
27 
28  public static final short ECHO_CLASS_CODE = (short)0x0288;
29 
30  public static final byte EPC_ELECTRIC_ENERGY_METER_CLASSIFICATION = (byte)0xD0;
31  public static final byte EPC_OWNER_CLASSIFICATION = (byte)0xD1;
32  public static final byte EPC_PHASES_AND_WIRES_SETTING_STATUS = (byte)0xD2;
33  public static final byte EPC_COMPOSITE_TRANSFORMATION_RATIO = (byte)0xD3;
34  public static final byte EPC_MULTIPLYING_FACTOR_FOR_COMPOSITE_TRANSFORMATION_RATIO = (byte)0xD4;
35  public static final byte EPC_METER_TYPE_CERTIFICATION_NUMBER = (byte)0xD5;
36  public static final byte EPC_YEAR_AND_MONTH_OF_INSPECTION_EXPIRY = (byte)0xD6;
44  public static final byte EPC_MEASURED_INSTANTANEOUS_ELECTRIC_ENERGY = (byte)0xE7;
45  public static final byte EPC_MEASURED_INSTANTANEOUS_CURRENTS = (byte)0xE8;
46  public static final byte EPC_MEASURED_INSTANTANEOUS_VOLTAGES = (byte)0xE9;
49 
50  @Override
51  protected void setupPropertyMaps() {
52  super.setupPropertyMaps();
53 
61  }
62 
63  @Override
64  public void onNew() {
65  super.onNew();
66  Echo.getEventListener().onNewSmartElectricEnergyMeter(this);
67  }
68 
69  @Override
70  public short getEchoClassCode() {
71  return ECHO_CLASS_CODE;
72  }
73 
99  protected boolean setOperationStatus(byte[] edt) {return false;}
125  protected abstract byte[] getOperationStatus();
151  protected boolean setElectricEnergyMeterClassification(byte[] edt) {return false;}
177  protected byte[] getElectricEnergyMeterClassification() {return null;}
203  protected boolean isValidElectricEnergyMeterClassification(byte[] edt) {
204  if(edt == null || !(edt.length == 1)) return false;
205  return true;
206  }
232  protected boolean setOwnerClassification(byte[] edt) {return false;}
258  protected byte[] getOwnerClassification() {return null;}
284  protected boolean isValidOwnerClassification(byte[] edt) {
285  if(edt == null || !(edt.length == 1)) return false;
286  return true;
287  }
314  protected byte[] getPhasesAndWiresSettingStatus() {return null;}
341  protected boolean isValidPhasesAndWiresSettingStatus(byte[] edt) {
342  if(edt == null || !(edt.length == 1)) return false;
343  return true;
344  }
368  protected byte[] getCompositeTransformationRatio() {return null;}
392  protected boolean isValidCompositeTransformationRatio(byte[] edt) {
393  if(edt == null || !(edt.length == 4)) return false;
394  return true;
395  }
422  protected byte[] getMultiplyingFactorForCompositeTransformationRatio() {return null;}
450  if(edt == null || !(edt.length == 1)) return false;
451  return true;
452  }
477  protected byte[] getMeterTypeCertificationNumber() {return null;}
502  protected boolean isValidMeterTypeCertificationNumber(byte[] edt) {
503  if(edt == null || !(edt.length == 10)) return false;
504  return true;
505  }
530  protected boolean setYearAndMonthOfInspectionExpiry(byte[] edt) {return false;}
555  protected byte[] getYearAndMonthOfInspectionExpiry() {return null;}
580  protected boolean isValidYearAndMonthOfInspectionExpiry(byte[] edt) {
581  if(edt == null || !(edt.length == 6)) return false;
582  return true;
583  }
632  if(edt == null || !(edt.length == 1)) return false;
633  return true;
634  }
683  if(edt == null || !(edt.length == 4)) return false;
684  return true;
685  }
744  if(edt == null || !(edt.length == 1)) return false;
745  return true;
746  }
805  if(edt == null || !(edt.length == 194)) return false;
806  return true;
807  }
856  if(edt == null || !(edt.length == 4)) return false;
857  return true;
858  }
917  if(edt == null || !(edt.length == 194)) return false;
918  return true;
919  }
998  if(edt == null || !(edt.length == 1)) return false;
999  return true;
1000  }
1025  protected byte[] getMeasuredInstantaneousElectricEnergy() {return null;}
1050  protected boolean isValidMeasuredInstantaneousElectricEnergy(byte[] edt) {
1051  if(edt == null || !(edt.length == 4)) return false;
1052  return true;
1053  }
1083  protected byte[] getMeasuredInstantaneousCurrents() {return null;}
1113  protected boolean isValidMeasuredInstantaneousCurrents(byte[] edt) {
1114  if(edt == null || !(edt.length == 4)) return false;
1115  return true;
1116  }
1146  protected byte[] getMeasuredInstantaneousVoltages() {return null;}
1176  protected boolean isValidMeasuredInstantaneousVoltages(byte[] edt) {
1177  if(edt == null || !(edt.length == 4)) return false;
1178  return true;
1179  }
1256  if(edt == null || !(edt.length == 11)) return false;
1257  return true;
1258  }
1329  if(edt == null || !(edt.length == 11)) return false;
1330  return true;
1331  }
1332 
1333  @Override
1334  protected synchronized boolean setProperty(EchoProperty property) {
1335  boolean success = super.setProperty(property);
1336  if(success) return success;
1337 
1338  switch(property.epc) {
1340  case EPC_OWNER_CLASSIFICATION : return setOwnerClassification(property.edt);
1343  default : return false;
1344  }
1345  }
1346 
1347  @Override
1348  protected synchronized byte[] getProperty(byte epc) {
1349  byte[] edt = super.getProperty(epc);
1350  if(edt != null) return edt;
1351 
1352  switch(epc) {
1372  default : return null;
1373  }
1374  }
1375 
1376  @Override
1377  protected synchronized boolean isValidProperty(EchoProperty property) {
1378  boolean valid = super.isValidProperty(property);
1379  if(valid) return valid;
1380 
1381  switch(property.epc) {
1401  default : return false;
1402  }
1403  }
1404 
1405  @Override
1406  public Setter set() {
1407  return set(true);
1408  }
1409 
1410  @Override
1411  public Setter set(boolean responseRequired) {
1412  return new Setter(getEchoClassCode(), getInstanceCode()
1413  , getNode().getAddressStr(), responseRequired);
1414  }
1415 
1416  @Override
1417  public Getter get() {
1418  return new Getter(getEchoClassCode(), getInstanceCode()
1419  , getNode().getAddressStr());
1420  }
1421 
1422  @Override
1423  public Informer inform() {
1424  return inform(isSelfObject());
1425  }
1426 
1427  @Override
1428  protected Informer inform(boolean multicast) {
1429  String address;
1430  if(multicast) {
1431  address = EchoSocket.MULTICAST_ADDRESS;
1432  } else {
1433  address = getNode().getAddressStr();
1434  }
1435  return new Informer(getEchoClassCode(), getInstanceCode()
1436  , address, isSelfObject());
1437  }
1438 
1439  public static class Receiver extends DeviceObject.Receiver {
1440 
1441  @Override
1442  protected boolean onSetProperty(EchoObject eoj, short tid, byte esv,
1443  EchoProperty property, boolean success) {
1444  boolean ret = super.onSetProperty(eoj, tid, esv, property, success);
1445  if(ret) return true;
1446 
1447  switch(property.epc) {
1449  onSetElectricEnergyMeterClassification(eoj, tid, esv, property, success);
1450  return true;
1451  case EPC_OWNER_CLASSIFICATION :
1452  onSetOwnerClassification(eoj, tid, esv, property, success);
1453  return true;
1455  onSetYearAndMonthOfInspectionExpiry(eoj, tid, esv, property, success);
1456  return true;
1458  onSetDayForWhichTheHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyIsToBeRetrieved(eoj, tid, esv, property, success);
1459  return true;
1460  default :
1461  return false;
1462  }
1463  }
1464 
1465  @Override
1466  protected boolean onGetProperty(EchoObject eoj, short tid, byte esv,
1467  EchoProperty property, boolean success) {
1468  boolean ret = super.onGetProperty(eoj, tid, esv, property, success);
1469  if(ret) return true;
1470 
1471  switch(property.epc) {
1473  onGetElectricEnergyMeterClassification(eoj, tid, esv, property, success);
1474  return true;
1475  case EPC_OWNER_CLASSIFICATION :
1476  onGetOwnerClassification(eoj, tid, esv, property, success);
1477  return true;
1479  onGetPhasesAndWiresSettingStatus(eoj, tid, esv, property, success);
1480  return true;
1482  onGetCompositeTransformationRatio(eoj, tid, esv, property, success);
1483  return true;
1485  onGetMultiplyingFactorForCompositeTransformationRatio(eoj, tid, esv, property, success);
1486  return true;
1488  onGetMeterTypeCertificationNumber(eoj, tid, esv, property, success);
1489  return true;
1491  onGetYearAndMonthOfInspectionExpiry(eoj, tid, esv, property, success);
1492  return true;
1494  onGetNumberOfEffectiveDigitsForCumulativeAmountsOfElectricEnergy(eoj, tid, esv, property, success);
1495  return true;
1497  onGetMeasuredCumulativeAmountOfElectricEnergyNormalDirection(eoj, tid, esv, property, success);
1498  return true;
1500  onGetUnitForCumulativeAmountsOfElectricEnergyNormalAndReverseDirections(eoj, tid, esv, property, success);
1501  return true;
1503  onGetHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyNormalDirection(eoj, tid, esv, property, success);
1504  return true;
1506  onGetMeasuredCumulativeAmountsOfElectricEnergyReverseDirection(eoj, tid, esv, property, success);
1507  return true;
1509  onGetHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyReverseDirection(eoj, tid, esv, property, success);
1510  return true;
1512  onGetDayForWhichTheHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyIsToBeRetrieved(eoj, tid, esv, property, success);
1513  return true;
1515  onGetMeasuredInstantaneousElectricEnergy(eoj, tid, esv, property, success);
1516  return true;
1518  onGetMeasuredInstantaneousCurrents(eoj, tid, esv, property, success);
1519  return true;
1521  onGetMeasuredInstantaneousVoltages(eoj, tid, esv, property, success);
1522  return true;
1524  onGetCumulativeAmountsOfElectricEnergyMeasuredAtFixedTimeNormalDirection(eoj, tid, esv, property, success);
1525  return true;
1527  onGetCumulativeAmountsOfElectricEnergyMeasuredAtFixedTimeReverseDirection(eoj, tid, esv, property, success);
1528  return true;
1529  default :
1530  return false;
1531  }
1532  }
1533 
1559  protected void onSetElectricEnergyMeterClassification(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1585  protected void onGetElectricEnergyMeterClassification(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1611  protected void onSetOwnerClassification(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1637  protected void onGetOwnerClassification(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1664  protected void onGetPhasesAndWiresSettingStatus(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1688  protected void onGetCompositeTransformationRatio(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1715  protected void onGetMultiplyingFactorForCompositeTransformationRatio(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1740  protected void onGetMeterTypeCertificationNumber(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1765  protected void onSetYearAndMonthOfInspectionExpiry(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1790  protected void onGetYearAndMonthOfInspectionExpiry(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1814  protected void onGetNumberOfEffectiveDigitsForCumulativeAmountsOfElectricEnergy(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1838  protected void onGetMeasuredCumulativeAmountOfElectricEnergyNormalDirection(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1867  protected void onGetUnitForCumulativeAmountsOfElectricEnergyNormalAndReverseDirections(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1896  protected void onGetHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyNormalDirection(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1920  protected void onGetMeasuredCumulativeAmountsOfElectricEnergyReverseDirection(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1949  protected void onGetHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyReverseDirection(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
1975  protected void onSetDayForWhichTheHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyIsToBeRetrieved(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
2001  protected void onGetDayForWhichTheHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyIsToBeRetrieved(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
2026  protected void onGetMeasuredInstantaneousElectricEnergy(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
2056  protected void onGetMeasuredInstantaneousCurrents(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
2086  protected void onGetMeasuredInstantaneousVoltages(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
2124  protected void onGetCumulativeAmountsOfElectricEnergyMeasuredAtFixedTimeNormalDirection(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
2159  protected void onGetCumulativeAmountsOfElectricEnergyMeasuredAtFixedTimeReverseDirection(EchoObject eoj, short tid, byte esv, EchoProperty property, boolean success) {}
2160  }
2161 
2162  public static class Setter extends DeviceObject.Setter {
2163  public Setter(short dstEchoClassCode, byte dstEchoInstanceCode
2164  , String dstEchoAddress, boolean responseRequired) {
2165  super(dstEchoClassCode, dstEchoInstanceCode
2166  , dstEchoAddress, responseRequired);
2167  }
2168 
2169  @Override
2170  public Setter reqSetProperty(byte epc, byte[] edt) {
2171  return (Setter)super.reqSetProperty(epc, edt);
2172  }
2173 
2174  @Override
2175  public Setter reqSetOperationStatus(byte[] edt) {
2176  return (Setter)super.reqSetOperationStatus(edt);
2177  }
2178  @Override
2179  public Setter reqSetInstallationLocation(byte[] edt) {
2180  return (Setter)super.reqSetInstallationLocation(edt);
2181  }
2182  @Override
2183  public Setter reqSetCurrentLimitSetting(byte[] edt) {
2184  return (Setter)super.reqSetCurrentLimitSetting(edt);
2185  }
2186  @Override
2187  public Setter reqSetPowerSavingOperationSetting(byte[] edt) {
2188  return (Setter)super.reqSetPowerSavingOperationSetting(edt);
2189  }
2190  @Override
2191  public Setter reqSetRemoteControlSetting(byte[] edt) {
2192  return (Setter)super.reqSetRemoteControlSetting(edt);
2193  }
2194  @Override
2195  public Setter reqSetCurrentTimeSetting(byte[] edt) {
2196  return (Setter)super.reqSetCurrentTimeSetting(edt);
2197  }
2198  @Override
2199  public Setter reqSetCurrentDateSetting(byte[] edt) {
2200  return (Setter)super.reqSetCurrentDateSetting(edt);
2201  }
2202  @Override
2203  public Setter reqSetPowerLimitSetting(byte[] edt) {
2204  return (Setter)super.reqSetPowerLimitSetting(edt);
2205  }
2206 
2232  public Setter reqSetElectricEnergyMeterClassification(byte[] edt) {
2233  reqSetProperty(EPC_ELECTRIC_ENERGY_METER_CLASSIFICATION, edt);
2234  return this;
2235  }
2261  public Setter reqSetOwnerClassification(byte[] edt) {
2262  reqSetProperty(EPC_OWNER_CLASSIFICATION, edt);
2263  return this;
2264  }
2289  public Setter reqSetYearAndMonthOfInspectionExpiry(byte[] edt) {
2290  reqSetProperty(EPC_YEAR_AND_MONTH_OF_INSPECTION_EXPIRY, edt);
2291  return this;
2292  }
2318  public Setter reqSetDayForWhichTheHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyIsToBeRetrieved(byte[] edt) {
2320  return this;
2321  }
2322  }
2323 
2324  public static class Getter extends DeviceObject.Getter {
2325  public Getter(short dstEchoClassCode, byte dstEchoInstanceCode
2326  , String dstEchoAddress) {
2327  super(dstEchoClassCode, dstEchoInstanceCode
2328  , dstEchoAddress);
2329  }
2330 
2331  @Override
2332  public Getter reqGetProperty(byte epc) {
2333  return (Getter)super.reqGetProperty(epc);
2334  }
2335 
2336  @Override
2337  public Getter reqGetOperationStatus() {
2338  return (Getter)super.reqGetOperationStatus();
2339  }
2340  @Override
2341  public Getter reqGetInstallationLocation() {
2342  return (Getter)super.reqGetInstallationLocation();
2343  }
2344  @Override
2345  public Getter reqGetStandardVersionInformation() {
2346  return (Getter)super.reqGetStandardVersionInformation();
2347  }
2348  @Override
2349  public Getter reqGetIdentificationNumber() {
2350  return (Getter)super.reqGetIdentificationNumber();
2351  }
2352  @Override
2353  public Getter reqGetMeasuredInstantaneousPowerConsumption() {
2354  return (Getter)super.reqGetMeasuredInstantaneousPowerConsumption();
2355  }
2356  @Override
2357  public Getter reqGetMeasuredCumulativePowerConsumption() {
2358  return (Getter)super.reqGetMeasuredCumulativePowerConsumption();
2359  }
2360  @Override
2361  public Getter reqGetManufacturersFaultCode() {
2362  return (Getter)super.reqGetManufacturersFaultCode();
2363  }
2364  @Override
2365  public Getter reqGetCurrentLimitSetting() {
2366  return (Getter)super.reqGetCurrentLimitSetting();
2367  }
2368  @Override
2369  public Getter reqGetFaultStatus() {
2370  return (Getter)super.reqGetFaultStatus();
2371  }
2372  @Override
2373  public Getter reqGetFaultDescription() {
2374  return (Getter)super.reqGetFaultDescription();
2375  }
2376  @Override
2377  public Getter reqGetManufacturerCode() {
2378  return (Getter)super.reqGetManufacturerCode();
2379  }
2380  @Override
2381  public Getter reqGetBusinessFacilityCode() {
2382  return (Getter)super.reqGetBusinessFacilityCode();
2383  }
2384  @Override
2385  public Getter reqGetProductCode() {
2386  return (Getter)super.reqGetProductCode();
2387  }
2388  @Override
2389  public Getter reqGetProductionNumber() {
2390  return (Getter)super.reqGetProductionNumber();
2391  }
2392  @Override
2393  public Getter reqGetProductionDate() {
2394  return (Getter)super.reqGetProductionDate();
2395  }
2396  @Override
2397  public Getter reqGetPowerSavingOperationSetting() {
2398  return (Getter)super.reqGetPowerSavingOperationSetting();
2399  }
2400  @Override
2401  public Getter reqGetRemoteControlSetting() {
2402  return (Getter)super.reqGetRemoteControlSetting();
2403  }
2404  @Override
2405  public Getter reqGetCurrentTimeSetting() {
2406  return (Getter)super.reqGetCurrentTimeSetting();
2407  }
2408  @Override
2409  public Getter reqGetCurrentDateSetting() {
2410  return (Getter)super.reqGetCurrentDateSetting();
2411  }
2412  @Override
2413  public Getter reqGetPowerLimitSetting() {
2414  return (Getter)super.reqGetPowerLimitSetting();
2415  }
2416  @Override
2417  public Getter reqGetCumulativeOperatingTime() {
2418  return (Getter)super.reqGetCumulativeOperatingTime();
2419  }
2420  @Override
2421  public Getter reqGetStatusChangeAnnouncementPropertyMap() {
2422  return (Getter)super.reqGetStatusChangeAnnouncementPropertyMap();
2423  }
2424  @Override
2425  public Getter reqGetSetPropertyMap() {
2426  return (Getter)super.reqGetSetPropertyMap();
2427  }
2428  @Override
2429  public Getter reqGetGetPropertyMap() {
2430  return (Getter)super.reqGetGetPropertyMap();
2431  }
2432 
2458  public Getter reqGetElectricEnergyMeterClassification() {
2460  return this;
2461  }
2487  public Getter reqGetOwnerClassification() {
2488  reqGetProperty(EPC_OWNER_CLASSIFICATION);
2489  return this;
2490  }
2517  public Getter reqGetPhasesAndWiresSettingStatus() {
2518  reqGetProperty(EPC_PHASES_AND_WIRES_SETTING_STATUS);
2519  return this;
2520  }
2544  public Getter reqGetCompositeTransformationRatio() {
2545  reqGetProperty(EPC_COMPOSITE_TRANSFORMATION_RATIO);
2546  return this;
2547  }
2574  public Getter reqGetMultiplyingFactorForCompositeTransformationRatio() {
2576  return this;
2577  }
2602  public Getter reqGetMeterTypeCertificationNumber() {
2603  reqGetProperty(EPC_METER_TYPE_CERTIFICATION_NUMBER);
2604  return this;
2605  }
2630  public Getter reqGetYearAndMonthOfInspectionExpiry() {
2632  return this;
2633  }
2657  public Getter reqGetNumberOfEffectiveDigitsForCumulativeAmountsOfElectricEnergy() {
2659  return this;
2660  }
2684  public Getter reqGetMeasuredCumulativeAmountOfElectricEnergyNormalDirection() {
2686  return this;
2687  }
2716  public Getter reqGetUnitForCumulativeAmountsOfElectricEnergyNormalAndReverseDirections() {
2718  return this;
2719  }
2748  public Getter reqGetHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyNormalDirection() {
2750  return this;
2751  }
2775  public Getter reqGetMeasuredCumulativeAmountsOfElectricEnergyReverseDirection() {
2777  return this;
2778  }
2807  public Getter reqGetHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyReverseDirection() {
2809  return this;
2810  }
2836  public Getter reqGetDayForWhichTheHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyIsToBeRetrieved() {
2838  return this;
2839  }
2864  public Getter reqGetMeasuredInstantaneousElectricEnergy() {
2866  return this;
2867  }
2897  public Getter reqGetMeasuredInstantaneousCurrents() {
2898  reqGetProperty(EPC_MEASURED_INSTANTANEOUS_CURRENTS);
2899  return this;
2900  }
2930  public Getter reqGetMeasuredInstantaneousVoltages() {
2931  reqGetProperty(EPC_MEASURED_INSTANTANEOUS_VOLTAGES);
2932  return this;
2933  }
2971  public Getter reqGetCumulativeAmountsOfElectricEnergyMeasuredAtFixedTimeNormalDirection() {
2973  return this;
2974  }
3009  public Getter reqGetCumulativeAmountsOfElectricEnergyMeasuredAtFixedTimeReverseDirection() {
3011  return this;
3012  }
3013  }
3014 
3015  public static class Informer extends DeviceObject.Informer {
3016  public Informer(short echoClassCode, byte echoInstanceCode
3017  , String dstEchoAddress, boolean isSelfObject) {
3018  super(echoClassCode, echoInstanceCode
3019  , dstEchoAddress, isSelfObject);
3020  }
3021 
3022  @Override
3023  public Informer reqInformProperty(byte epc) {
3024  return (Informer)super.reqInformProperty(epc);
3025  }
3026  @Override
3027  public Informer reqInformOperationStatus() {
3028  return (Informer)super.reqInformOperationStatus();
3029  }
3030  @Override
3031  public Informer reqInformInstallationLocation() {
3032  return (Informer)super.reqInformInstallationLocation();
3033  }
3034  @Override
3035  public Informer reqInformStandardVersionInformation() {
3036  return (Informer)super.reqInformStandardVersionInformation();
3037  }
3038  @Override
3039  public Informer reqInformIdentificationNumber() {
3040  return (Informer)super.reqInformIdentificationNumber();
3041  }
3042  @Override
3043  public Informer reqInformMeasuredInstantaneousPowerConsumption() {
3044  return (Informer)super.reqInformMeasuredInstantaneousPowerConsumption();
3045  }
3046  @Override
3047  public Informer reqInformMeasuredCumulativePowerConsumption() {
3048  return (Informer)super.reqInformMeasuredCumulativePowerConsumption();
3049  }
3050  @Override
3051  public Informer reqInformManufacturersFaultCode() {
3052  return (Informer)super.reqInformManufacturersFaultCode();
3053  }
3054  @Override
3055  public Informer reqInformCurrentLimitSetting() {
3056  return (Informer)super.reqInformCurrentLimitSetting();
3057  }
3058  @Override
3059  public Informer reqInformFaultStatus() {
3060  return (Informer)super.reqInformFaultStatus();
3061  }
3062  @Override
3063  public Informer reqInformFaultDescription() {
3064  return (Informer)super.reqInformFaultDescription();
3065  }
3066  @Override
3067  public Informer reqInformManufacturerCode() {
3068  return (Informer)super.reqInformManufacturerCode();
3069  }
3070  @Override
3071  public Informer reqInformBusinessFacilityCode() {
3072  return (Informer)super.reqInformBusinessFacilityCode();
3073  }
3074  @Override
3075  public Informer reqInformProductCode() {
3076  return (Informer)super.reqInformProductCode();
3077  }
3078  @Override
3079  public Informer reqInformProductionNumber() {
3080  return (Informer)super.reqInformProductionNumber();
3081  }
3082  @Override
3083  public Informer reqInformProductionDate() {
3084  return (Informer)super.reqInformProductionDate();
3085  }
3086  @Override
3087  public Informer reqInformPowerSavingOperationSetting() {
3088  return (Informer)super.reqInformPowerSavingOperationSetting();
3089  }
3090  @Override
3091  public Informer reqInformRemoteControlSetting() {
3092  return (Informer)super.reqInformRemoteControlSetting();
3093  }
3094  @Override
3095  public Informer reqInformCurrentTimeSetting() {
3096  return (Informer)super.reqInformCurrentTimeSetting();
3097  }
3098  @Override
3099  public Informer reqInformCurrentDateSetting() {
3100  return (Informer)super.reqInformCurrentDateSetting();
3101  }
3102  @Override
3103  public Informer reqInformPowerLimitSetting() {
3104  return (Informer)super.reqInformPowerLimitSetting();
3105  }
3106  @Override
3107  public Informer reqInformCumulativeOperatingTime() {
3108  return (Informer)super.reqInformCumulativeOperatingTime();
3109  }
3110  @Override
3111  public Informer reqInformStatusChangeAnnouncementPropertyMap() {
3112  return (Informer)super.reqInformStatusChangeAnnouncementPropertyMap();
3113  }
3114  @Override
3115  public Informer reqInformSetPropertyMap() {
3116  return (Informer)super.reqInformSetPropertyMap();
3117  }
3118  @Override
3119  public Informer reqInformGetPropertyMap() {
3120  return (Informer)super.reqInformGetPropertyMap();
3121  }
3122 
3148  public Informer reqInformElectricEnergyMeterClassification() {
3149  reqInformProperty(EPC_ELECTRIC_ENERGY_METER_CLASSIFICATION);
3150  return this;
3151  }
3177  public Informer reqInformOwnerClassification() {
3178  reqInformProperty(EPC_OWNER_CLASSIFICATION);
3179  return this;
3180  }
3207  public Informer reqInformPhasesAndWiresSettingStatus() {
3208  reqInformProperty(EPC_PHASES_AND_WIRES_SETTING_STATUS);
3209  return this;
3210  }
3234  public Informer reqInformCompositeTransformationRatio() {
3235  reqInformProperty(EPC_COMPOSITE_TRANSFORMATION_RATIO);
3236  return this;
3237  }
3264  public Informer reqInformMultiplyingFactorForCompositeTransformationRatio() {
3266  return this;
3267  }
3292  public Informer reqInformMeterTypeCertificationNumber() {
3293  reqInformProperty(EPC_METER_TYPE_CERTIFICATION_NUMBER);
3294  return this;
3295  }
3320  public Informer reqInformYearAndMonthOfInspectionExpiry() {
3321  reqInformProperty(EPC_YEAR_AND_MONTH_OF_INSPECTION_EXPIRY);
3322  return this;
3323  }
3347  public Informer reqInformNumberOfEffectiveDigitsForCumulativeAmountsOfElectricEnergy() {
3349  return this;
3350  }
3374  public Informer reqInformMeasuredCumulativeAmountOfElectricEnergyNormalDirection() {
3376  return this;
3377  }
3406  public Informer reqInformUnitForCumulativeAmountsOfElectricEnergyNormalAndReverseDirections() {
3408  return this;
3409  }
3438  public Informer reqInformHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyNormalDirection() {
3440  return this;
3441  }
3465  public Informer reqInformMeasuredCumulativeAmountsOfElectricEnergyReverseDirection() {
3467  return this;
3468  }
3497  public Informer reqInformHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyReverseDirection() {
3499  return this;
3500  }
3526  public Informer reqInformDayForWhichTheHistoricalDataOfMeasuredCumulativeAmountsOfElectricEnergyIsToBeRetrieved() {
3528  return this;
3529  }
3554  public Informer reqInformMeasuredInstantaneousElectricEnergy() {
3555  reqInformProperty(EPC_MEASURED_INSTANTANEOUS_ELECTRIC_ENERGY);
3556  return this;
3557  }
3587  public Informer reqInformMeasuredInstantaneousCurrents() {
3588  reqInformProperty(EPC_MEASURED_INSTANTANEOUS_CURRENTS);
3589  return this;
3590  }
3620  public Informer reqInformMeasuredInstantaneousVoltages() {
3621  reqInformProperty(EPC_MEASURED_INSTANTANEOUS_VOLTAGES);
3622  return this;
3623  }
3661  public Informer reqInformCumulativeAmountsOfElectricEnergyMeasuredAtFixedTimeNormalDirection() {
3663  return this;
3664  }
3699  public Informer reqInformCumulativeAmountsOfElectricEnergyMeasuredAtFixedTimeReverseDirection() {
3701  return this;
3702  }
3703  }
3704 
3705  public static class Proxy extends SmartElectricEnergyMeter {
3706  public Proxy(byte instanceCode) {
3707  super();
3708  mEchoInstanceCode = instanceCode;
3709  }
3710  @Override
3711  public byte getInstanceCode() {
3712  return mEchoInstanceCode;
3713  }
3714  @Override
3715  protected byte[] getOperationStatus() {return null;}
3716  @Override
3717  protected boolean setInstallationLocation(byte[] edt) {return false;}
3718  @Override
3719  protected byte[] getInstallationLocation() {return null;}
3720  @Override
3721  protected byte[] getStandardVersionInformation() {return null;}
3722  @Override
3723  protected byte[] getFaultStatus() {return null;}
3724  @Override
3725  protected byte[] getManufacturerCode() {return null;}
3726  @Override
3727  protected byte[] getNumberOfEffectiveDigitsForCumulativeAmountsOfElectricEnergy() {return null;}
3728  @Override
3729  protected byte[] getMeasuredCumulativeAmountOfElectricEnergyNormalDirection() {return null;}
3730  @Override
3732  @Override
3734  }
3735 
3736  public static Setter setG() {
3737  return setG((byte)0);
3738  }
3739 
3740  public static Setter setG(byte instanceCode) {
3741  return setG(instanceCode, true);
3742  }
3743 
3744  public static Setter setG(boolean responseRequired) {
3745  return setG((byte)0, responseRequired);
3746  }
3747 
3748  public static Setter setG(byte instanceCode, boolean responseRequired) {
3749  return new Setter(ECHO_CLASS_CODE, instanceCode
3750  , EchoSocket.MULTICAST_ADDRESS, responseRequired);
3751  }
3752 
3753  public static Getter getG() {
3754  return getG((byte)0);
3755  }
3756 
3757  public static Getter getG(byte instanceCode) {
3758  return new Getter(ECHO_CLASS_CODE, instanceCode
3760  }
3761 
3762  public static Informer informG() {
3763  return informG((byte)0);
3764  }
3765 
3766  public static Informer informG(byte instanceCode) {
3767  return new Informer(ECHO_CLASS_CODE, instanceCode
3768  , EchoSocket.MULTICAST_ADDRESS, false);
3769  }
3770 
3771 }
final void removeSetProperty(byte epc)
Definition: EchoObject.java:98
final void addStatusChangeAnnouncementProperty(byte epc)
Definition: EchoObject.java:71
final void addGetProperty(byte epc)
static Setter setG(byte instanceCode, boolean responseRequired)
abstract boolean setInstallationLocation(byte[] edt)
static final String MULTICAST_ADDRESS
Definition: EchoSocket.java:53