DELL
2024-01-13 4a6db1d471d81415d0c407cb1d91ed926593b4e3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package org.openmuc.openiec61850.internal.cli;
 
public class LongCliParameter extends ValueCliParameter {
 
    Long value;
    private Long defaultValue = null;
 
    LongCliParameter(CliParameterBuilder builder, String parameterName, long defaultValue) {
        super(builder, parameterName);
        this.defaultValue = defaultValue;
        value = defaultValue;
    }
 
    LongCliParameter(CliParameterBuilder builder, String parameterName) {
        super(builder, parameterName);
    }
 
    public long getValue() {
        return value;
    }
 
    @Override
    int parse(String[] args, int i) throws CliParseException {
        selected = true;
 
        if (args.length < (i + 2)) {
            throw new CliParseException("Parameter " + name + " has no value.");
        }
 
        try {
            value = Long.decode(args[i + 1]);
        } catch (Exception e) {
            throw new CliParseException("Parameter value " + args[i + 1] + " cannot be converted to long.");
        }
        return 2;
    }
 
    @Override
    void appendDescription(StringBuilder sb) {
        super.appendDescription(sb);
        if (defaultValue != null) {
            sb.append(" Default is ").append(defaultValue).append(".");
        }
    }
}