From ba1a47cb659a8c3ae42a420c309a40ffd710afd5 Mon Sep 17 00:00:00 2001 From: "brad.zdanivsky" Date: Wed, 4 Jan 2012 00:04:01 +0000 Subject: [PATCH] linux battery start --- oculus/WEB-INF/src/oculus/BatteryLife.java | 18 ++++++++++++++++-- oculus/WEB-INF/src/oculus/Util.java | 21 +++++++++++++++++---- 2 files changed, 33 insertions(+), 6 deletions(-) diff --git a/oculus/WEB-INF/src/oculus/BatteryLife.java b/oculus/WEB-INF/src/oculus/BatteryLife.java index a79392a..ee41356 100755 --- a/oculus/WEB-INF/src/oculus/BatteryLife.java +++ b/oculus/WEB-INF/src/oculus/BatteryLife.java @@ -19,7 +19,7 @@ public class BatteryLife { private String query; private ActiveXComponent axWMI; - private final String os = System.getProperty("os.name"); + private static final String os = System.getProperty("os.name"); private boolean battcharging = false; private boolean batterypresent = false; @@ -60,7 +60,21 @@ public void init(Application parent){ query = "Select * from Win32_Battery"; axWMI = new ActiveXComponent(connectStr); - } else System.out.println("linux battery... "); + } else /* if(.equals("linux")*/ { + + System.out.println("linux battery... "); + + // cat /proc/acpi/battery/BAT0/state + String[] result = Util.systemCallBlocking("cat /proc/acpi/battery/BAT0/state").split(":"); + + for(int i = 0 ; i < result.length ; i++){ + if(result[i].equals("present")){ + // if() + } + } + + + } } } diff --git a/oculus/WEB-INF/src/oculus/Util.java b/oculus/WEB-INF/src/oculus/Util.java index 08580e2..dcc341f 100644 --- a/oculus/WEB-INF/src/oculus/Util.java +++ b/oculus/WEB-INF/src/oculus/Util.java @@ -17,6 +17,7 @@ public class Util { + private static final String os = System.getProperty("os.name"); private static final int PRECISION = 2; /** @@ -210,7 +211,10 @@ public static boolean copyfile(String srFile, String dtFile) { * @param str is the command to run, like: "restart * */ - public static void systemCallBlocking(final String args) { + public static String systemCallBlocking(final String args) { + + String result = null; + try { long start = System.currentTimeMillis(); @@ -220,15 +224,18 @@ public static void systemCallBlocking(final String args) { String line = null; System.out.println(proc.hashCode() + "OCULUS: exec(): " + args); - while ((line = procReader.readLine()) != null) + while ((line = procReader.readLine()) != null){ System.out.println(proc.hashCode() + " systemCallBlocking() : " + line); - + result += line; + } System.out.println("OCULUS: process exit value = " + proc.exitValue()); System.out.println("OCULUS: bocking run time = " + (System.currentTimeMillis()-start) + " ms"); } catch (Exception e) { e.printStackTrace(); } + + return result; } /** @@ -367,7 +374,9 @@ public static void setSystemVolume(int percent, Application app){ * is the phrase to turn from text to speech */ public static void beep() { - systemCall("nircmdc.exe beep 500 1000"); + if(os.startsWith("windows")){ + systemCall("nircmdc.exe beep 500 1000"); + }else log("need linux beep"); // TODO: } public static String[] tail ( File file, String match ){ @@ -452,4 +461,8 @@ public static void debug(String str, Object c) { public static void log(String str, Object c) { System.out.println("OCULUS: " + c.getClass().getName() + ", " +str); } + + public static void log(String str) { + System.out.println("OCULUS: Util, " +str); + } }