// Path: ESignCore/src/main/java/tr/gov/turkiye/esign/enums/OSVersion.java
// public enum OSVersion {SPARC, SPARC_V9};
// 
// Path: ESignCore/src/main/java/tr/gov/turkiye/esign/enums/OSNames.java
// public enum OSNames {WINDOWS, LINUX, MACOS, OTHER, SOLARIS};
// 
// Path: ESignCore/src/main/java/tr/gov/turkiye/esign/enums/OSArch.java
// public enum OSArch {_32BIT, _64BIT};


import tr.gov.turkiye.esign.enums.OSNames;
import tr.gov.turkiye.esign.enums.OSArch;
import java.util.Locale;
import tr.gov.turkiye.esign.enums.OSVersion;
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package tr.gov.turkiye.esign.statics;


/**
 *
 * Includes supported operating systems.
 * 
 * @author sercan
 */
public class OS {
    final private static String WINDOWS = "windows";
    final private static String LINUX = "linux";
    final private static String MACOS = "mac";
    final private static String SOLARIS = "solaris";

    /**
     * Gets user operating system.
     * 
     * @return Return corresponding OS name. If user operation system is not supported returns OSNames.OTHER
     */
    public static OSNames getSystemOS() {
        String osName = System.getProperty("os.name").toLowerCase(Locale.ENGLISH);
        if (osName.contains(WINDOWS)) {
// Path: ESignCore/src/main/java/tr/gov/turkiye/esign/enums/OSVersion.java
// public enum OSVersion {SPARC, SPARC_V9};
// 
// Path: ESignCore/src/main/java/tr/gov/turkiye/esign/enums/OSNames.java
// public enum OSNames {WINDOWS, LINUX, MACOS, OTHER, SOLARIS};
// 
// Path: ESignCore/src/main/java/tr/gov/turkiye/esign/enums/OSArch.java
// public enum OSArch {_32BIT, _64BIT};


// Path: ESignCore/src/main/java/tr/gov/turkiye/esign/statics/OS.java
import tr.gov.turkiye.esign.enums.OSNames;
import tr.gov.turkiye.esign.enums.OSArch;
import java.util.Locale;
import tr.gov.turkiye.esign.enums.OSVersion;

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package tr.gov.turkiye.esign.statics;


/**
 *
 * Includes supported operating systems.
 * 
 * @author sercan
 */
public class OS {
    final private static String WINDOWS = "windows";
    final private static String LINUX = "linux";
    final private static String MACOS = "mac";
    final private static String SOLARIS = "solaris";

    /**
     * Gets user operating system.
     * 
     * @return Return corresponding OS name. If user operation system is not supported returns OSNames.OTHER
     */
    public static OSNames getSystemOS() {
        String osName = System.getProperty("os.name").toLowerCase(Locale.ENGLISH);
        if (osName.contains(WINDOWS)) {
            return OSNames.WINDOWS;