// Path: src/main/java/org/chris/portmapper/model/Protocol.java
// public enum Protocol {
// 
//     TCP("TCP"), UDP("UDP");
// 
//     private final String name;
// 
//     private Protocol(final String name) {
//         this.name = name;
//     }
// 
//     public static Protocol getProtocol(final String name) {
//         if (name != null && name.equalsIgnoreCase("TCP")) {
//             return TCP;
//         }
//         if (name != null && name.equalsIgnoreCase("UDP")) {
//             return UDP;
//         }
//         throw new IllegalArgumentException("Invalid protocol name '" + name + "'");
//     }
// 
//     public String getName() {
//         return name;
//     }
// }


import org.chris.portmapper.model.Protocol;
import org.kohsuke.args4j.CmdLineException;
import org.kohsuke.args4j.CmdLineParser;
import org.kohsuke.args4j.Option;
import org.kohsuke.args4j.ParserProperties;
import static java.util.Arrays.*;
    }

    public boolean isAddPortMapping() {
        return addPortMapping;
    }

    public boolean isDeletePortMapping() {
        return deletePortMapping;
    }

    public boolean isPrintInfo() {
        return printInfo;
    }

    public boolean isListPortMappings() {
        return listPortMappings;
    }

    public String getInternalIp() {
        return internalIp;
    }

    public int getInternalPort() {
        return internalPort;
    }

    public int getExternalPort() {
        return externalPort;
    }

// Path: src/main/java/org/chris/portmapper/model/Protocol.java
// public enum Protocol {
// 
//     TCP("TCP"), UDP("UDP");
// 
//     private final String name;
// 
//     private Protocol(final String name) {
//         this.name = name;
//     }
// 
//     public static Protocol getProtocol(final String name) {
//         if (name != null && name.equalsIgnoreCase("TCP")) {
//             return TCP;
//         }
//         if (name != null && name.equalsIgnoreCase("UDP")) {
//             return UDP;
//         }
//         throw new IllegalArgumentException("Invalid protocol name '" + name + "'");
//     }
// 
//     public String getName() {
//         return name;
//     }
// }


// Path: src/main/java/org/chris/portmapper/CommandLineArguments.java
import org.chris.portmapper.model.Protocol;
import org.kohsuke.args4j.CmdLineException;
import org.kohsuke.args4j.CmdLineParser;
import org.kohsuke.args4j.Option;
import org.kohsuke.args4j.ParserProperties;
import static java.util.Arrays.*;

    }

    public boolean isAddPortMapping() {
        return addPortMapping;
    }

    public boolean isDeletePortMapping() {
        return deletePortMapping;
    }

    public boolean isPrintInfo() {
        return printInfo;
    }

    public boolean isListPortMappings() {
        return listPortMappings;
    }

    public String getInternalIp() {
        return internalIp;
    }

    public int getInternalPort() {
        return internalPort;
    }

    public int getExternalPort() {
        return externalPort;
    }

    public Protocol getProtocol() {