CPD Results

The following document contains the results of PMD's CPD 5.5.1.

Duplications

File Line
net/sf/mbus4j/dataframes/datablocks/vif/VifFC.java 71
net/sf/mbus4j/dataframes/datablocks/vif/VifeFC.java 71
    CYCLES_OF_EEPROM("Speicherzyklen im EEPROM"),
    UNKNOWN_0X21(),
    UNKNOWN_0X22(),
    UNKNOWN_0X23(),
    UNKNOWN_0X24(),
    UNKNOWN_0X25(),
    UNKNOWN_0X26(),
    UNKNOWN_0X27(),
    UNKNOWN_0X28(),
    UNKNOWN_0X29(),
    UNKNOWN_0X2A(),
    UNKNOWN_0X2B(),
    UNKNOWN_0X2C(),
    UNKNOWN_0X2D(),
    UNKNOWN_0X2E(),
    UNKNOWN_0X2F(),
    UNKNOWN_0X30(),
    UNKNOWN_0X31(),
    UNKNOWN_0X32(),
    UNKNOWN_0X33(),
    UNKNOWN_0X34(),
    UNKNOWN_0X35(),
    UNKNOWN_0X36(),
    UNKNOWN_0X37(),
    UNKNOWN_0X38(),
    UNKNOWN_0X39(),
    UNKNOWN_0X3A(),
    UNKNOWN_0X3B(),
    UNKNOWN_0X3C(),
    UNKNOWN_0X3D(),
    UNKNOWN_0X3E(),
    UNKNOWN_0X3F(),
    UNKNOWN_0X40(),
    UNKNOWN_0X41(),
    UNKNOWN_0X42(),
    UNKNOWN_0X43(),
    UNKNOWN_0X44(),
    UNKNOWN_0X45(),
    UNKNOWN_0X46(),
    UNKNOWN_0X47(),
    UNKNOWN_0X48(),
    UNKNOWN_0X49(),
    UNKNOWN_0X4A(),
    UNKNOWN_0X4B(),
    UNKNOWN_0X4C(),
    UNKNOWN_0X4D(),
    UNKNOWN_0X4E(),
    UNKNOWN_0X4F(),
    UNKNOWN_0X50(),
    UNKNOWN_0X51(),
    UNKNOWN_0X52(),
    UNKNOWN_0X53(),
    UNKNOWN_0X54(),
    UNKNOWN_0X55(),
    UNKNOWN_0X56(),
    UNKNOWN_0X57(),
    UNKNOWN_0X58(),
    UNKNOWN_0X59(),
    UNKNOWN_0X5A(),
    UNKNOWN_0X5B(),
    UNKNOWN_0X5C(),
    UNKNOWN_0X5D(),
    UNKNOWN_0X5E(),
    UNKNOWN_0X5F(),
    UNKNOWN_0X60(),
    UNKNOWN_0X61(),
    UNKNOWN_0X62(),
    UNKNOWN_0X63(),
    UNKNOWN_0X64(),
    UNKNOWN_0X65(),
    UNKNOWN_0X66(),
    UNKNOWN_0X67(),
    UNKNOWN_0X68(),
    UNKNOWN_0X69(),
    UNKNOWN_0X6A(),
    UNKNOWN_0X6B(),
    UNKNOWN_0X6C(),
    UNKNOWN_0X6D(),
    UNKNOWN_0X6E(),
    UNKNOWN_0X6F(),
    UNKNOWN_0X70(),
    UNKNOWN_0X71(),
    UNKNOWN_0X72(),
    UNKNOWN_0X73(),
    UNKNOWN_0X74(),
    UNKNOWN_0X75(),
    UNKNOWN_0X76(),
    UNKNOWN_0X77(),
    UNKNOWN_0X78(),
    UNKNOWN_0X79(),
    UNKNOWN_0X7A(),
    UNKNOWN_0X7B(),
    UNKNOWN_0X7C(),
    UNKNOWN_0X7D(),
    UNKNOWN_0X7E(),
    UNKNOWN_0X7F();
    
    public final static VifFC valueOfTableIndex(byte ordinal) {
File Line
net/sf/mbus4j/dataframes/datablocks/IntegerDataBlock.java 97
net/sf/mbus4j/dataframes/datablocks/LongDataBlock.java 86
    public void setValue(int value) {
        this.value = value;
        this.bcdError = null;
    }

    @Override
    protected void accumulateDatatoJSON(JSONObject json) {
        if (!isBcdError()) {
            json.accumulate("data", getValue());
        } else {
            JSONObject jsonBcdError = new JSONObject();
            jsonBcdError.accumulate("bcdErrorCode", getBcdError());
            json.accumulate("data", jsonBcdError);
        }
    }

    @Override
    public void fromJSON(JSONObject json) {
        super.fromJSON(json);
        if (json.get("data") instanceof JSONObject) {
            JSONObject data = json.getJSONObject("data");
            if (data.containsKey("bcdErrorCode")) {
                bcdError = data.getString("bcdErrorCode");
            } else {
                throw new IllegalArgumentException("Unknown value at data: " + data.toString(1));
            }
        } else {
            setValue(json.getInt("data"));
File Line
net/sf/mbus4j/dataframes/datablocks/ByteDataBlock.java 87
net/sf/mbus4j/dataframes/datablocks/ShortDataBlock.java 87
    public void setValue(byte value) {
        this.value = value;
        this.bcdError = null;
    }

    @Override
    protected void accumulateDatatoJSON(JSONObject json) {
        if (!isBcdError()) {
            json.accumulate("data", getValue());
        } else {
            JSONObject jsonBcdError = new JSONObject();
            jsonBcdError.accumulate("bcdErrorCode", getBcdError());
            json.accumulate("data", jsonBcdError);
        }
    }

    @Override
    public void fromJSON(JSONObject json) {
        super.fromJSON(json);
        if (json.get("data") instanceof JSONObject) {
            JSONObject data = json.getJSONObject("data");
            if (data.containsKey("bcdErrorCode")) {
                bcdError = data.getString("bcdErrorCode");
            } else {
                throw new IllegalArgumentException("Unknown value at data: " + data.toString(1));
            }
        } else {
            setValue((byte) json.getInt("data"));
File Line
net/sf/mbus4j/dataframes/datablocks/ByteDataBlock.java 87
net/sf/mbus4j/dataframes/datablocks/IntegerDataBlock.java 97
net/sf/mbus4j/dataframes/datablocks/LongDataBlock.java 86
net/sf/mbus4j/dataframes/datablocks/ShortDataBlock.java 87
    public void setValue(byte value) {
        this.value = value;
        this.bcdError = null;
    }

    @Override
    protected void accumulateDatatoJSON(JSONObject json) {
        if (!isBcdError()) {
            json.accumulate("data", getValue());
        } else {
            JSONObject jsonBcdError = new JSONObject();
            jsonBcdError.accumulate("bcdErrorCode", getBcdError());
            json.accumulate("data", jsonBcdError);
        }
    }

    @Override
    public void fromJSON(JSONObject json) {
        super.fromJSON(json);
        if (json.get("data") instanceof JSONObject) {
            JSONObject data = json.getJSONObject("data");
            if (data.containsKey("bcdErrorCode")) {
                bcdError = data.getString("bcdErrorCode");
            } else {
                throw new IllegalArgumentException("Unknown value at data: " + data.toString(1));
            }
        } else {
            setValue((byte) json.getInt("data"));
File Line
net/sf/mbus4j/dataframes/datablocks/vif/VifFB.java 256
net/sf/mbus4j/dataframes/datablocks/vif/VifFD.java 270
net/sf/mbus4j/dataframes/datablocks/vif/VifPrimary.java 288
        for (VifFB value : values()) {
            if (value.getLabel().equals(label) && ((unitOfMeasurement == value.getUnitOfMeasurement()) || ((unitOfMeasurement != null) && unitOfMeasurement.equals(value.getUnitOfMeasurement()))) && ((siPrefix == value.getSiPrefix()) || ((siPrefix != null) && siPrefix.equals(value.getSiPrefix()))) && ((exponent == value.getExponent()) || ((exponent != null) && exponent.equals(value.getExponent())))) {
                return value;
            }
        }
        return valueOf(label);
    }

    @Override
    public VifTypes getVifType() {
        return VifTypes.FB_EXTENTION;
File Line
net/sf/mbus4j/dataframes/datablocks/vif/VifFC.java 46
net/sf/mbus4j/dataframes/datablocks/vif/VifeFC.java 46
    UNKNOWN_0X07(),
    UNKNOWN_0X08(),
    UNKNOWN_0X09(),
    UNKNOWN_0X0A(),
    UNKNOWN_0X0B(),
    UNKNOWN_0X0C(),
    UNKNOWN_0X0D(),
    UNKNOWN_0X0E(),
    UNKNOWN_0X0F(),
    UNKNOWN_0X10(),
    UNKNOWN_0X11(),
    UNKNOWN_0X12(),
    UNKNOWN_0X13(),
    UNKNOWN_0X14(),
    UNKNOWN_0X15(),
    UNKNOWN_0X16(),
    UNKNOWN_0X17(),
    UNKNOWN_0X18(),
    UNKNOWN_0X19(),
    UNKNOWN_0X1A(),
    UNKNOWN_0X1B(),
    UNKNOWN_0X1C(),
    UNKNOWN_0X1D(),
    UNKNOWN_0X1E(),
    UNKNOWN_0X1F(),
File Line
net/sf/mbus4j/dataframes/datablocks/DataBlock.java 457
net/sf/mbus4j/dataframes/datablocks/DateAndTimeDataBlock.java 190
        if (functionField != null) {
            sb.append(inset).append("tariff = ").append(getTariff()).append('\n');
            sb.append(inset).append("storageNumber = ").append(getStorageNumber()).append("\n");
            sb.append(inset).append("functionField = ").append(getFunctionField()).append("\n");
            sb.append(inset).append("subUnit = ").append(getSubUnit()).append("\n");
        }
File Line
net/sf/mbus4j/dataframes/SendUserData.java 95
net/sf/mbus4j/dataframes/SynchronizeAction.java 69
    }

    @Override
    public void setAddress(byte address) {
        this.address = address;
    }

    public void setFcb(boolean fcb) {
        this.fcb = fcb;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("control code = ").append(getControlCode()).append('\n');
        sb.append("isFcb = ").append(isFcb()).append('\n');
        sb.append(String.format("address = 0x%02X\n", address));
File Line
net/sf/mbus4j/dataframes/datablocks/DataBlock.java 425
net/sf/mbus4j/dataframes/datablocks/DateAndTimeDataBlock.java 164
                if (getExponent() != null) {

                    if (getExponent() > 0) {
                        sb.append(" * 1");
                        for (int i = 0; i < getExponent(); i++) {
                            sb.append("0");
                        }
                    } else if (getExponent() < 0) {
                        sb.append(" * 0.");
                        for (int i = -1; i > getExponent(); i--) {
                            sb.append("0");
                        }
                        sb.append("1");

                    }
                }
File Line
net/sf/mbus4j/dataframes/GeneralApplicationError.java 230
net/sf/mbus4j/dataframes/UserDataResponse.java 382
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("control code = ").append(getControlCode()).append('\n');
        sb.append("isAcd = ").append(isAcd()).append('\n');
        sb.append("isDfc = ").append(isDfc()).append('\n');
        sb.append(String.format("address = 0x%02X\n", address));
        sb.append("error = ").append(error).append('\n');
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 188
net/sf/mbus4j/dataframes/GeneralApplicationError.java 171
    }

    @Override
    public Iterator<DataBlock> iterator() {
        return new Iterator<DataBlock>() {
            @Override
            public boolean hasNext() {
                return false;
            }

            @Override
            public DataBlock next() {
                throw new UnsupportedOperationException("Not supported yet.");
            }

            @Override
            public void remove() {
                throw new UnsupportedOperationException("Not supported yet.");
            }
        };
    }

    @Override
    public void replaceDataBlock(DataBlock oldDataBlock, DataBlock newDataBlock) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
File Line
net/sf/mbus4j/dataframes/SendUserData.java 100
net/sf/mbus4j/dataframes/SetBaudrate.java 90
net/sf/mbus4j/dataframes/SynchronizeAction.java 74
    }

    public void setFcb(boolean fcb) {
        this.fcb = fcb;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("control code = ").append(getControlCode()).append('\n');
        sb.append("isFcb = ").append(isFcb()).append('\n');
        sb.append(String.format("address = 0x%02X\n", address));
File Line
net/sf/mbus4j/dataframes/datablocks/vif/VifFB.java 215
net/sf/mbus4j/dataframes/datablocks/vif/VifFD.java 229
    }

    /**
     * @return the exponent
     */
    @Override
    public Integer getExponent() {
        return exponent;
    }

    @Override
    public String getLabel() {
        return label;
    }

    /**
     * @return the siPrefix
     */
    @Override
    public SiPrefix getSiPrefix() {
        return siPrefix;
    }

    public byte getTableIndex() {
        return (byte) ordinal();
    }

    /**
     * @return the unit
     */
    @Override
    public UnitOfMeasurement getUnitOfMeasurement() {
        return unit;
    }

    @Override
    public String toString() {
        return VifToString.vifToString(this);
    }

    public static VifFB assemble(String label, UnitOfMeasurement unitOfMeasurement, SiPrefix siPrefix, Integer exponent) {
File Line
net/sf/mbus4j/dataframes/SendUserData.java 118
net/sf/mbus4j/dataframes/SynchronizeAction.java 90
        return sb.toString();
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        JSONObject result = new JSONObject();
        result.accumulate("controlCode",
                getControlCode());
        result.accumulate("subType", SEND_USER_DATA_SUBTYPE);

        if (JsonSerializeType.ALL == jsonSerializeType) {
            result.accumulate("fcb",
                    isFcb());
            result.accumulate("address", address & 0xFF);
        }
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 244
net/sf/mbus4j/dataframes/SetBaudrate.java 97
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("control code = ").append(getControlCode()).append('\n');
        sb.append("isFcb = ").append(isFcb()).append('\n');
        sb.append(String.format("address = 0x%02X\n", address));
        sb.append("telegramType = ").append(getTelegramType()).append('\n');
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 244
net/sf/mbus4j/dataframes/SendUserData.java 104
net/sf/mbus4j/dataframes/SynchronizeAction.java 81
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("control code = ").append(getControlCode()).append('\n');
        sb.append("isFcb = ").append(isFcb()).append('\n');
        sb.append(String.format("address = 0x%02X\n", address));
File Line
net/sf/mbus4j/dataframes/datablocks/ByteDataBlock.java 114
net/sf/mbus4j/dataframes/datablocks/ShortDataBlock.java 114
            setValue((byte) json.getInt("data"));
        }
    }

    /**
     * @return the bcdError
     */
    @Override
    public String getBcdError() {
        return bcdError;
    }

    /**
     * @param bcdError the bcdError to set
     */
    @Override
    public void setBcdError(String bcdError) {
        this.bcdError = formatBcdError(bcdError);
        this.value = 0;
    }

    @Override
    public void setValue(String text) {
        try {
            value = Byte.parseByte(text);
File Line
net/sf/mbus4j/dataframes/datablocks/ByteDataBlock.java 114
net/sf/mbus4j/dataframes/datablocks/IntegerDataBlock.java 124
net/sf/mbus4j/dataframes/datablocks/ShortDataBlock.java 114
            setValue((byte) json.getInt("data"));
        }
    }

    /**
     * @return the bcdError
     */
    @Override
    public String getBcdError() {
        return bcdError;
    }

    /**
     * @param bcdError the bcdError to set
     */
    @Override
    public void setBcdError(String bcdError) {
        this.bcdError = formatBcdError(bcdError);
        this.value = 0;
    }

    @Override
    public void setValue(String text) {
        try {
            value = Byte.parseByte(text);
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 244
net/sf/mbus4j/dataframes/RequestClassXData.java 94
net/sf/mbus4j/dataframes/SendUserData.java 104
net/sf/mbus4j/dataframes/SetBaudrate.java 97
net/sf/mbus4j/dataframes/SynchronizeAction.java 81
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("control code = ").append(getControlCode()).append('\n');
        sb.append("isFcb = ").append(isFcb()).append('\n');
        sb.append(String.format("address = 0x%02X\n", address));
File Line
net/sf/mbus4j/dataframes/datablocks/ByteDataBlock.java 114
net/sf/mbus4j/dataframes/datablocks/IntegerDataBlock.java 124
net/sf/mbus4j/dataframes/datablocks/LongDataBlock.java 117
net/sf/mbus4j/dataframes/datablocks/ShortDataBlock.java 114
            setValue((byte) json.getInt("data"));
        }
    }

    /**
     * @return the bcdError
     */
    @Override
    public String getBcdError() {
        return bcdError;
    }

    /**
     * @param bcdError the bcdError to set
     */
    @Override
    public void setBcdError(String bcdError) {
        this.bcdError = formatBcdError(bcdError);
        this.value = 0;
    }

    @Override
    public void setValue(String text) {
        try {
            value = Byte.parseByte(text);
File Line
net/sf/mbus4j/dataframes/datablocks/DateAndTimeDataBlock.java 159
net/sf/mbus4j/dataframes/datablocks/EnhancedIdentificationDataBlock.java 114
        sb.append(inset).append("dataType = ").append(getDataFieldCode()).append("\n");
        if (getVif() != null) {
            sb.append(inset).append("description = ").append(getParamDescr()).append("\n");
File Line
net/sf/mbus4j/dataframes/RequestClassXData.java 101
net/sf/mbus4j/dataframes/SynchronizeAction.java 87
        sb.append("isFcv = ").append(isFcv()).append('\n');
        sb.append(String.format("address = 0x%02X\n", address));
        return sb.toString();
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        JSONObject result = new JSONObject();
        result.accumulate("controlCode", getControlCode().getLabel());
File Line
net/sf/mbus4j/dataframes/datablocks/DataBlock.java 413
net/sf/mbus4j/dataframes/datablocks/DateAndTimeDataBlock.java 156
        if (action != null) {
            sb.append(inset).append("action = ").append(getAction()).append("\n");
        }
        sb.append(inset).append("dataType = ").append(getDataFieldCode()).append("\n");
        if (vif != null) {
File Line
net/sf/mbus4j/dataframes/datablocks/ByteDataBlock.java 61
net/sf/mbus4j/dataframes/datablocks/LongDataBlock.java 56
net/sf/mbus4j/dataframes/datablocks/ShortDataBlock.java 61
    public byte getValue() {
        if (isBcdError()) {
            throw new IllegalArgumentException("No value BCD Error: " + bcdError);
        } else {
            return value;
        }
    }

    @Override
    public String getValueAsString() {
        if (bcdError != null) {
            return bcdError;
        }
        switch (getDataFieldCode()) {
            case _8_BIT_INTEGER:
File Line
net/sf/mbus4j/SerialPortConnection.java 211
net/sf/mbus4j/TcpIpConnection.java 148
        return hash;
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj) {
            return true;
        }
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final SerialPortConnection other = (SerialPortConnection) obj;
File Line
net/sf/mbus4j/dataframes/datablocks/vif/VifFC.java 179
net/sf/mbus4j/dataframes/datablocks/vif/VifeFC.java 178
    private VifFC(String label) {
        this.label = label;
    }

    @Override
    public String getLabel() {
        return label;
    }

    public byte getTableIndex() {
        return (byte) ordinal();
    }

    @Override
    public String toString() {
        return label;
    }

    public static VifFC assemble(String label) {
File Line
net/sf/mbus4j/dataframes/datablocks/DataBlock.java 446
net/sf/mbus4j/dataframes/datablocks/DateAndTimeDataBlock.java 179
                }

                sb.append(" [");
                if (getSiPrefix() != null) {
                    sb.append(getSiPrefix());
                }
                sb.append(getUnitOfMeasurement()).append("]\n");
            } else {
                sb.append("\n");
            }
File Line
net/sf/mbus4j/dataframes/GeneralApplicationError.java 197
net/sf/mbus4j/dataframes/UserDataResponse.java 336
    }

    /**
     * @param acd the acd to set
     */
    public void setAcd(boolean acd) {
        this.acd = acd;
    }

    /**
     * @param address the address to set
     */
    @Override
    public void setAddress(byte address) {
        this.address = address;
    }

    /**
     * @param dcf the dfc to set
     */
    public void setDfc(boolean dfc) {
        this.dfc = dfc;
    }

    public void setError(byte b) {
File Line
net/sf/mbus4j/dataframes/SetBaudrate.java 105
net/sf/mbus4j/dataframes/SynchronizeAction.java 88
        sb.append(String.format("baudrate = %d\n", baudrate));

        return sb.toString();
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        JSONObject result = new JSONObject();
        result.accumulate("controlCode",
                getControlCode());
        result.accumulate("subType", SEND_USER_DATA_SUBTYPE);

        if (jsonSerializeType.ALL == jsonSerializeType) {
File Line
net/sf/mbus4j/Connection.java 163
net/sf/mbus4j/TcpIpConnection.java 121
        out.writeInt(responseTimeOutOffset);
    }

    private void readObject(ObjectInputStream in) throws IOException {
        int ver = in.readInt();
        switch (ver) {
            case 1:
                readObjectVer1(in);
                break;
        }
    }

    private void readObjectVer1(ObjectInputStream in) throws IOException {
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 112
net/sf/mbus4j/dataframes/GeneralApplicationError.java 91
        TelegramType(int id, String label) {
            this.id = (byte) id;
            this.label = label;
        }

        @Override
        public String toString() {
            return label;
        }

        public String getLabel() {
            return label;
        }

        public static TelegramType fromLabel(String label) {
File Line
net/sf/mbus4j/dataframes/SendUserData.java 83
net/sf/mbus4j/dataframes/UserDataResponse.java 321
    }

    @Override
    public Iterator<DataBlock> iterator() {
        return dataBlocks.iterator();
    }

    @Override
    public void replaceDataBlock(DataBlock oldDataBlock, DataBlock newDataBlock) {
        final int pos = dataBlocks.indexOf(oldDataBlock);
        dataBlocks.remove(pos);
File Line
net/sf/mbus4j/dataframes/SendUserData.java 118
net/sf/mbus4j/dataframes/SetBaudrate.java 107
        return sb.toString();
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        JSONObject result = new JSONObject();
        result.accumulate("controlCode",
                getControlCode());
        result.accumulate("subType", SEND_USER_DATA_SUBTYPE);

        if (JsonSerializeType.ALL == jsonSerializeType) {
File Line
net/sf/mbus4j/decoder/Stack.java 212
net/sf/mbus4j/decoder/Stack.java 229
        int result = 0;

        for (int i = stackPos - 1; i >= (stackPos - bytes); i--) {
            result <<= 8;
            result += (data[i] & 0xFF);
        }

        stackPos -= bytes;

        return result;
    }

    public long popLong() {
File Line
net/sf/mbus4j/encoder/Encoder.java 421
net/sf/mbus4j/encoder/Encoder.java 431
                if (((IntegerDataBlock) db).isBcdError()) {
                    pushBcdError(((BcdValue) db).getBcdError());
                } else {
                    pushBcd(((IntegerDataBlock) db).getValue(), 6);
File Line
net/sf/mbus4j/dataframes/datablocks/ByteDataBlock.java 61
net/sf/mbus4j/dataframes/datablocks/IntegerDataBlock.java 68
net/sf/mbus4j/dataframes/datablocks/LongDataBlock.java 56
net/sf/mbus4j/dataframes/datablocks/ShortDataBlock.java 61
    public byte getValue() {
        if (isBcdError()) {
            throw new IllegalArgumentException("No value BCD Error: " + bcdError);
        } else {
            return value;
        }
    }

    @Override
    public String getValueAsString() {
        if (bcdError != null) {
            return bcdError;
File Line
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 551
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 628
                Vife vife = new VifeManufacturerSpecific(b);

                if (vifes == null) {
                    vifes = new Vife[1];
                } else {
                    vifes = Arrays.copyOf(vifes, vifes.length + 1);
                }
                vifes[vifes.length - 1] = vife;
File Line
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 553
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 593
                if (vifes == null) {
                    vifes = new Vife[1];
                } else {
                    vifes = Arrays.copyOf(vifes, vifes.length + 1);
                }
                vifes[vifes.length - 1] = vife;
File Line
net/sf/mbus4j/dataframes/SendUserDataManSpec.java 65
net/sf/mbus4j/dataframes/SetBaudrate.java 66
net/sf/mbus4j/dataframes/SynchronizeAction.java 57
    }

    @Override
    public ControlCode getControlCode() {
        return ControlCode.SND_UD;
    }

    /**
     * @return the fcb
     */
    public boolean isFcb() {
        return fcb;
    }

    /**
     * @param address the address to set
     */
    @Override
    public void setAddress(byte address) {
        this.address = address;
    }

    /**
     * @param ciField the ciField to set
     */
    public void setCiField(int ciField) {
File Line
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 593
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 630
                if (vifes == null) {
                    vifes = new Vife[1];
                } else {
                    vifes = Arrays.copyOf(vifes, vifes.length + 1);
                }

                vifes[vifes.length - 1] = vife;
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 150
net/sf/mbus4j/dataframes/GeneralApplicationError.java 127
    }

    @Override
    public boolean addDataBlock(DataBlock dataBlock) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    @Override
    public byte getAddress() {
        return address;
    }

    @Override
    public ControlCode getControlCode() {
        return ControlCode.SND_UD;
File Line
net/sf/mbus4j/dataframes/datablocks/RealDataBlock.java 70
net/sf/mbus4j/dataframes/datablocks/StringDataBlock.java 63
    }

    @Override
    protected void accumulateDatatoJSON(JSONObject json) {
        json.accumulate("data", getValue());
    }

    @Override
    public void fromJSON(JSONObject json) {
        super.fromJSON(json);
        setValue((float) json.getDouble("data"));
File Line
net/sf/mbus4j/dataframes/SelectionOfSlaves.java 112
net/sf/mbus4j/dataframes/SendUserData.java 63
        return datablocks.add(dataBlock);
    }

    @Override
    public byte getAddress() {
        return address;
    }

    @Override
    public ControlCode getControlCode() {
        return ControlCode.SND_UD;
    }

    @Override
    public DataBlock getLastDataBlock() {
        return datablocks.get(datablocks.size() - 1);
File Line
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 560
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 637
                break;

            case SND_UD:
                objectAction = ObjectAction.valueOf(b);

                break;

            default:
                setState(DecodeState.ERROR);
                throw new NotSupportedException(String.format(
                        "Dont know how to handele Control code %s ",
                        frame.getControlCode()));
        }
File Line
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 682
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 693
            setState(DecodeState.MAN_SPEC_VIFE);
        } else if ((dfc == DataFieldCode.SELECTION_FOR_READOUT) || (dfc == DataFieldCode.SPECIAL_FUNCTION_GLOBAL_READOUT_REQUEST)) {
            createDataBlock();
            setState(DecodeState.RESULT_AVAIL);
        } else {
            startCollectingValue();
        }
    }
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 244
net/sf/mbus4j/dataframes/GeneralApplicationError.java 230
net/sf/mbus4j/dataframes/RequestClassXData.java 94
net/sf/mbus4j/dataframes/SelectionOfSlaves.java 208
net/sf/mbus4j/dataframes/SendUserData.java 104
net/sf/mbus4j/dataframes/SetBaudrate.java 97
net/sf/mbus4j/dataframes/SynchronizeAction.java 81
net/sf/mbus4j/dataframes/UserDataResponse.java 382
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("control code = ").append(getControlCode()).append('\n');
        sb.append("isFcb = ").append(isFcb()).append('\n');
File Line
net/sf/mbus4j/dataframes/GarbageCharFrame.java 49
net/sf/mbus4j/dataframes/SelectionOfSlaves.java 289
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    @Override
    public void fromJSON(JSONObject json) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    /**
     * @return the b
     */
    public byte getB() {
File Line
net/sf/mbus4j/dataframes/datablocks/DateAndTimeDataBlock.java 211
net/sf/mbus4j/dataframes/datablocks/DateDataBlock.java 88
        jsonValue.accumulate("res3", res3);
        json.accumulate("data", jsonValue);
    }

    @Override
    public void fromJSON(JSONObject json) {
        super.fromJSON(json);
        try {
            JSONObject jsonValue = json.getJSONObject("data");
File Line
net/sf/mbus4j/dataframes/datablocks/EnhancedIdentificationDataBlock.java 110
net/sf/mbus4j/dataframes/datablocks/RawDataBlock.java 76
    }

    @Override
    public void toString(StringBuilder sb, String inset) {
        sb.append(inset).append("dataType = ").append(getDataFieldCode()).append("\n");
File Line
net/sf/mbus4j/decoder/Stack.java 189
net/sf/mbus4j/decoder/Stack.java 262
        int val = popShort();
        Calendar cal = Calendar.getInstance();
        cal.set(Calendar.MILLISECOND, 0);
        cal.set(Calendar.SECOND, 0);
        cal.set(Calendar.MINUTE, 0);
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 49
net/sf/mbus4j/dataframes/SendUserData.java 119
net/sf/mbus4j/dataframes/SetBaudrate.java 108
net/sf/mbus4j/dataframes/SynchronizeAction.java 91
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        JSONObject result = new JSONObject();
        result.accumulate("controlCode",
                getControlCode());
        result.accumulate("subType", SEND_USER_DATA_SUBTYPE);
File Line
net/sf/mbus4j/dataframes/GarbageCharFrame.java 48
net/sf/mbus4j/dataframes/SendInitSlave.java 82
        throw new UnsupportedOperationException("Not supported yet.");
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    @Override
    public void fromJSON(JSONObject json) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
File Line
net/sf/mbus4j/dataframes/SendInitSlave.java 83
net/sf/mbus4j/dataframes/SendUserDataManSpec.java 99
net/sf/mbus4j/dataframes/SingleCharFrame.java 48
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    @Override
    public void fromJSON(JSONObject json) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
}
File Line
net/sf/mbus4j/dataframes/datablocks/DateAndTimeDataBlock.java 68
net/sf/mbus4j/dataframes/datablocks/DateDataBlock.java 63
        super(DataFieldCode._32_BIT_INTEGER, vif, vifes);
    }

    /**
     * @return the value
     */
    public Date getValue() {
        return value;
    }

    @Override
    public String getValueAsString() {
        return ISO_8601.get().format(value);
    }

    /**
     * @return the res1
     */
    public boolean isRes1() {
File Line
net/sf/mbus4j/dataframes/datablocks/vif/VifTypes.java 44
net/sf/mbus4j/dataframes/datablocks/vif/VifeTypes.java 43
        for (VifTypes value : values()) {
            if (value.getLabel().equals(label)) {
                return value;
            }
        }
        return valueOf(label);
    }

    private final String label;

    private VifTypes(String label) {
File Line
net/sf/mbus4j/dataframes/GarbageCharFrame.java 49
net/sf/mbus4j/dataframes/SendUserDataManSpec.java 99
net/sf/mbus4j/dataframes/SingleCharFrame.java 48
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    @Override
    public void fromJSON(JSONObject json) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
File Line
net/sf/mbus4j/dataframes/RequestClassXData.java 102
net/sf/mbus4j/dataframes/SetBaudrate.java 105
        sb.append(String.format("address = 0x%02X\n", address));
        return sb.toString();
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        JSONObject result = new JSONObject();
        result.accumulate("controlCode", getControlCode().getLabel());
File Line
net/sf/mbus4j/dataframes/SelectionOfSlaves.java 289
net/sf/mbus4j/dataframes/SendInitSlave.java 83
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    @Override
    public void fromJSON(JSONObject json) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
File Line
net/sf/mbus4j/dataframes/SendUserData.java 134
net/sf/mbus4j/dataframes/UserDataResponse.java 94
        JSONArray jsonDataBlocks = new JSONArray();

        for (DataBlock db : this) {
            jsonDataBlocks.add(db.toJSON(jsonSerializeType));
        }

        result.accumulate("dataBlocks", jsonDataBlocks);
File Line
net/sf/mbus4j/dataframes/datablocks/vif/VifeError.java 83
net/sf/mbus4j/dataframes/datablocks/vif/VifePrimary.java 177
        return (byte) ordinal();
    }

    @Override
    public String toString() {
        return label;
    }

    @Override
    public String getLabel() {
        return label;
    }

    @Override
    public VifeTypes getVifeType() {
        return VifeTypes.ERROR;
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 154
net/sf/mbus4j/dataframes/SelectionOfSlaves.java 112
net/sf/mbus4j/dataframes/SendUserData.java 63
        throw new UnsupportedOperationException("Not supported yet.");
    }

    @Override
    public byte getAddress() {
        return address;
    }

    @Override
    public ControlCode getControlCode() {
        return ControlCode.SND_UD;
    }

    @Override
    public DataBlock getLastDataBlock() {
File Line
net/sf/mbus4j/dataframes/SetBaudrate.java 121
net/sf/mbus4j/dataframes/SynchronizeAction.java 103
            result.accumulate("baudrate", baudrate);
        }

        return result;
    }

    @Override
    public void fromJSON(JSONObject json) {
        fcb = json.getBoolean("fcb");
        address = (byte) json.getInt("address");
File Line
net/sf/mbus4j/dataframes/datablocks/vif/VifFB.java 209
net/sf/mbus4j/dataframes/datablocks/vif/VifFD.java 217
    private VifFB(String label, SiPrefix siPrefix, UnitOfMeasurement unit, int exponent) {
        this.label = label;
        this.siPrefix = siPrefix;
        this.unit = unit;
        this.exponent = exponent;
File Line
net/sf/mbus4j/dataframes/datablocks/vif/VifPrimary.java 215
net/sf/mbus4j/dataframes/datablocks/vif/VifPrimary.java 235
    private VifPrimary(int vifCode, String label) {
        if (this.ordinal() != vifCode) {
            throw new IllegalArgumentException("ordinal and vifCode mismatch!");
        }
        this.label = label;
        this.siPrefix = null;
        this.unit = null;
File Line
net/sf/mbus4j/dataframes/datablocks/vif/VifePrimary.java 204
net/sf/mbus4j/dataframes/datablocks/vif/VifePrimary.java 224
    public static double getVifeCorrectionFactor(Vife[] vifes) {
        for (Vife vife : vifes) {
            if (vife instanceof VifePrimary) {
                switch ((VifePrimary)vife) {
                    case FACTOR_E__6: return 0.000001;
File Line
net/sf/mbus4j/Connection.java 163
net/sf/mbus4j/SerialPortConnection.java 122
net/sf/mbus4j/TcpIpConnection.java 121
        out.writeInt(responseTimeOutOffset);
    }

    private void readObject(ObjectInputStream in) throws IOException {
        int ver = in.readInt();
        switch (ver) {
            case 1:
                readObjectVer1(in);
                break;
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 51
net/sf/mbus4j/dataframes/GeneralApplicationError.java 45
net/sf/mbus4j/dataframes/SendUserData.java 121
net/sf/mbus4j/dataframes/SetBaudrate.java 110
net/sf/mbus4j/dataframes/SynchronizeAction.java 93
    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        JSONObject result = new JSONObject();
        result.accumulate("controlCode",
                getControlCode());
        result.accumulate("subType", SEND_USER_DATA_SUBTYPE);
File Line
net/sf/mbus4j/dataframes/RequestClassXData.java 103
net/sf/mbus4j/dataframes/SendUserData.java 118
        return sb.toString();
    }

    @Override
    public JSONObject toJSON(JsonSerializeType jsonSerializeType) {
        JSONObject result = new JSONObject();
        result.accumulate("controlCode", getControlCode().getLabel());
File Line
net/sf/mbus4j/dataframes/SelectionOfSlaves.java 247
net/sf/mbus4j/dataframes/SelectionOfSlaves.java 263
net/sf/mbus4j/dataframes/SelectionOfSlaves.java 279
        for (int i = 0; i < 8; i++) {
            if (((hexMask & 0x0F) != 0x0F) && ((hexMask & 0x0F) != (hexMan & 0x0F))) {
File Line
net/sf/mbus4j/dataframes/datablocks/DateAndTimeDataBlock.java 225
net/sf/mbus4j/dataframes/datablocks/DateDataBlock.java 97
            value = ISO_8601.get().parse(jsonValue.getString("timestamp"));
        } catch (ParseException ex) {
            throw new RuntimeException(ex);
        }
    }

    @Override
    public void setValue(String text) {
        try {
            value = DateFormat.getDateTimeInstance().parse(text);
File Line
net/sf/mbus4j/dataframes/datablocks/dif/VariableLengthType.java 41
net/sf/mbus4j/dataframes/datablocks/vif/UnitOfMeasurement.java 84
    private VariableLengthType(String label) {
        this.label = label;
    }

    @Override
    public String toString() {
        return label;
    }

    /**
     * @return the label
     */
    public String getLabel() {
        return label;
    }

    public static VariableLengthType fromLabel(String label) {
File Line
net/sf/mbus4j/MBusAddressing.java 51
net/sf/mbus4j/dataframes/UserDataResponse.java 177
net/sf/mbus4j/dataframes/datablocks/dif/DataFieldCode.java 75
net/sf/mbus4j/dataframes/datablocks/dif/FunctionField.java 63
net/sf/mbus4j/dataframes/datablocks/dif/VariableLengthType.java 58
net/sf/mbus4j/dataframes/datablocks/vif/UnitOfMeasurement.java 101
net/sf/mbus4j/dataframes/datablocks/vif/VifeObjectAction.java 56
        for (MBusAddressing value : values()) {
            if (value.getLabel().equals(label)) {
                return value;
            }
        }
        return valueOf(label);
    }
}
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 212
net/sf/mbus4j/dataframes/SendUserData.java 94
        throw new UnsupportedOperationException("Not supported yet.");
    }

    @Override
    public void setAddress(byte address) {
        this.address = address;
    }

    public void setFcb(boolean fcb) {
        this.fcb = fcb;
    }
File Line
net/sf/mbus4j/dataframes/SendUserData.java 142
net/sf/mbus4j/dataframes/SetBaudrate.java 124
net/sf/mbus4j/dataframes/SynchronizeAction.java 106
        return result;
    }

    @Override
    public void fromJSON(JSONObject json) {
        fcb = json.getBoolean("fcb");
        address = (byte) json.getInt("address");
File Line
net/sf/mbus4j/dataframes/datablocks/ByteDataBlock.java 138
net/sf/mbus4j/dataframes/datablocks/IntegerDataBlock.java 148
net/sf/mbus4j/dataframes/datablocks/LongDataBlock.java 141
net/sf/mbus4j/dataframes/datablocks/ShortDataBlock.java 138
            value = Byte.parseByte(text);
            bcdError = null;
        } catch (NumberFormatException ex) {
            value = 0;
            bcdError = text;
        }
    }

    @Override
    public boolean isBcd() {
        return DataFieldCode._2_DIGIT_BCD.equals(getDataFieldCode());
File Line
net/sf/mbus4j/dataframes/datablocks/DateAndTimeDataBlock.java 45
net/sf/mbus4j/dataframes/datablocks/DateDataBlock.java 45
public class DateAndTimeDataBlock extends DataBlock {
    // SimpleDateFormat is not thread-safe, so give one to each thread
    private static final ThreadLocal<SimpleDateFormat> ISO_8601 = new ThreadLocal<SimpleDateFormat>(){
        @Override
        protected SimpleDateFormat initialValue()
        {
            return new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
File Line
net/sf/mbus4j/MBusAddressing.java 51
net/sf/mbus4j/dataframes/MBusMedium.java 329
net/sf/mbus4j/dataframes/UserDataResponse.java 177
net/sf/mbus4j/dataframes/datablocks/dif/DataFieldCode.java 75
net/sf/mbus4j/dataframes/datablocks/dif/FunctionField.java 63
net/sf/mbus4j/dataframes/datablocks/dif/VariableLengthType.java 58
net/sf/mbus4j/dataframes/datablocks/vif/SiPrefix.java 75
net/sf/mbus4j/dataframes/datablocks/vif/UnitOfMeasurement.java 101
net/sf/mbus4j/dataframes/datablocks/vif/VifFC.java 198
net/sf/mbus4j/dataframes/datablocks/vif/VifTypes.java 44
net/sf/mbus4j/dataframes/datablocks/vif/VifeObjectAction.java 56
net/sf/mbus4j/dataframes/datablocks/vif/VifeTypes.java 43
        for (MBusAddressing value : values()) {
            if (value.getLabel().equals(label)) {
                return value;
            }
        }
        return valueOf(label);
    }
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 127
net/sf/mbus4j/dataframes/GeneralApplicationError.java 106
            for (TelegramType value : values()) {
                if (value.label.equals(label)) {
                    return value;
                }
            }

            return valueOf(label);
        }
    }

    private byte address;
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 213
net/sf/mbus4j/dataframes/SynchronizeAction.java 69
    }

    @Override
    public void setAddress(byte address) {
        this.address = address;
    }

    public void setFcb(boolean fcb) {
        this.fcb = fcb;
    }
File Line
net/sf/mbus4j/dataframes/datablocks/RawDataBlock.java 55
net/sf/mbus4j/json/JSONFactory.java 56
        StringBuilder sb = new StringBuilder();
        if (value != null) {
            for (byte b : value) {
                sb.append(String.format("%02X", b));
            }
        }
File Line
net/sf/mbus4j/dataframes/datablocks/dif/DataFieldCode.java 62
net/sf/mbus4j/dataframes/datablocks/dif/FunctionField.java 47
        this.code = (byte) code;
    }

    @Override
    public String toString() {
        return label;
    }

    public String getLabel() {
        return label;
    }

    public static DataFieldCode fromLabel(String label) {
File Line
net/sf/mbus4j/dataframes/datablocks/vif/VifePrimary.java 204
net/sf/mbus4j/dataframes/datablocks/vif/VifePrimary.java 224
net/sf/mbus4j/dataframes/datablocks/vif/VifePrimary.java 244
    public static double getVifeCorrectionFactor(Vife[] vifes) {
        for (Vife vife : vifes) {
            if (vife instanceof VifePrimary) {
                switch ((VifePrimary)vife) {
                    case FACTOR_E__6: return 0.000001;
File Line
net/sf/mbus4j/dataframes/ApplicationReset.java 127
net/sf/mbus4j/dataframes/GeneralApplicationError.java 106
net/sf/mbus4j/dataframes/datablocks/vif/ObjectAction.java 78
            for (TelegramType value : values()) {
                if (value.label.equals(label)) {
                    return value;
                }
            }

            return valueOf(label);
        }
    }
File Line
net/sf/mbus4j/dataframes/datablocks/DataBlock.java 294
net/sf/mbus4j/dataframes/datablocks/DataBlock.java 305
        this.vif = vif;
        if (vifes.length > 0) {
            this.vifes = Arrays.copyOf(vifes, vifes.length);
        }
    }
File Line
net/sf/mbus4j/decoder/Decoder.java 330
net/sf/mbus4j/decoder/Decoder.java 346
            case IDENT_NUMBER:
                stack.push(b);

                if (stack.isFull()) {
                    if (parsingFrame instanceof SelectionOfSlaves) {
                        ((SelectionOfSlaves) parsingFrame).setBcdMaskedId(stack.popInteger(4));
File Line
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 563
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 611
net/sf/mbus4j/decoder/VariableDataBlockDecoder.java 640
                objectAction = ObjectAction.valueOf(b);

                break;

            default:
                setState(DecodeState.ERROR);
                throw new NotSupportedException(String.format(
                        "Dont know how to handele Control code %s ",
                        frame.getControlCode()));
        }