All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.fisco.bcos.sdk.channel.model.EnumChannelProtocolVersion Maven / Gradle / Ivy

The newest version!
package org.fisco.bcos.sdk.channel.model;

public enum EnumChannelProtocolVersion {
    VERSION_1(1), // default version
    VERSION_2(2),
    VERSION_3(3);

    private int versionNumber;

    private EnumChannelProtocolVersion(int versionNumber) {
        this.setVersionNumber(versionNumber);
    }

    public int getVersionNumber() {
        return versionNumber;
    }

    public void setVersionNumber(int versionNumber) {
        this.versionNumber = versionNumber;
    }

    public static EnumChannelProtocolVersion getMinimumProtocol() {
        // get minimum version number supported
        EnumChannelProtocolVersion[] versions = EnumChannelProtocolVersion.values();
        if (0 == versions.length) {
            return EnumChannelProtocolVersion.VERSION_1;
        }

        return versions[0];
    }

    public static EnumChannelProtocolVersion getMaximumProtocol() {
        // get highest version number supported
        EnumChannelProtocolVersion[] versions = EnumChannelProtocolVersion.values();
        if (0 == versions.length) {
            return EnumChannelProtocolVersion.VERSION_1;
        }

        return versions[versions.length - 1];
    }

    public static EnumChannelProtocolVersion toEnum(int v) throws ChannelPrococolExceiption {

        for (EnumChannelProtocolVersion enumVersion : EnumChannelProtocolVersion.values()) {
            if (enumVersion.getVersionNumber() == v) {
                return enumVersion;
            }
        }

        throw new ChannelPrococolExceiption(
                " not support channel protocol, version " + String.valueOf(v));
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy