Loading Demo1/.classpath +0 −2 Original line number Diff line number Diff line Loading @@ -6,8 +6,6 @@ <attribute name="maven.pomderived" value="true"/> </attributes> </classpathentry> <classpathentry kind="lib" path="/Users/hughes/Desktop/workspace3/jfreechart-1.0.19/lib/jfreechart-1.0.19.jar"/> <classpathentry kind="lib" path="/Users/hughes/Desktop/workspace3/jfreechart-1.0.19/lib/jcommon-1.0.23.jar"/> <classpathentry combineaccessrules="false" kind="src" path="/MyLogger"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"> <attributes> Loading Demo1/.gitignore 0 → 100755 +2 −0 Original line number Diff line number Diff line /target/ /target/ Demo1/pom.xml +5 −0 Original line number Diff line number Diff line Loading @@ -27,5 +27,10 @@ <artifactId>jackson-core-asl</artifactId> <version>1.9.13</version> </dependency> <dependency> <groupId>org.jfree</groupId> <artifactId>jfreechart</artifactId> <version>1.0.19</version> </dependency> </dependencies> </project> No newline at end of file Demo1/src/com/jim/Demo1.java +0 −16 Original line number Diff line number Diff line package com.jim; import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowEvent; Loading Loading @@ -32,37 +30,23 @@ import javax.swing.JPanel; import javax.swing.ListSelectionModel; import javax.swing.SwingWorker; import javax.swing.Timer; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import org.codehaus.jackson.JsonNode; import org.codehaus.jackson.map.ObjectMapper; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartPanel; import org.jfree.chart.JFreeChart; import org.jfree.chart.axis.NumberAxis; import org.jfree.chart.axis.ValueAxis; import org.jfree.chart.plot.XYPlot; import org.jfree.chart.plot.dial.DialPlot; import org.jfree.chart.plot.dial.DialPointer; import org.jfree.chart.plot.dial.DialValueIndicator; import org.jfree.chart.plot.dial.StandardDialFrame; import org.jfree.chart.plot.dial.StandardDialScale; import org.jfree.chart.renderer.xy.DefaultXYItemRenderer; import org.jfree.chart.renderer.xy.StandardXYItemRenderer; import org.jfree.chart.renderer.xy.XYItemRenderer; import org.jfree.data.general.DefaultValueDataset; import org.jfree.data.time.Millisecond; import org.jfree.data.time.RegularTimePeriod; import org.jfree.data.time.TimeSeries; import org.jfree.data.time.TimeSeriesCollection; import org.jfree.data.xy.XYDataset; import org.jfree.ui.ApplicationFrame; import org.jfree.ui.RefineryUtilities; import com.jims.MyLogger; /** * A demonstration application showing a time series chart where you can * dynamically add (random) data by clicking on a button. Loading Demo1/src/com/jim/MyLogger.java 0 → 100755 +98 −0 Original line number Diff line number Diff line package com.jim; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.logging.ConsoleHandler; import java.util.logging.Formatter; import java.util.logging.Handler; import java.util.logging.Level; import java.util.logging.LogRecord; import java.util.logging.Logger; public class MyLogger { private static String thisClass(int n) { StackTraceElement[] ste = new RuntimeException().getStackTrace(); if (n>ste.length) throw new Error("depth incorrect"); return ste[n].getClassName(); } public static Logger get(Level thisClassLevel, Level rootLevel) { Logger log = Logger.getLogger(thisClass(1)); log.setLevel(thisClassLevel); root.setLevel(rootLevel); return log; } public static Logger get(Level thisClassLevel) { Logger log = Logger.getLogger(thisClass(1)); log.setLevel(thisClassLevel); return log; } public static Logger get() { Logger log = Logger.getLogger(thisClass(1)); return log; } static class myFormatter extends Formatter { static final DateFormat formatter = new SimpleDateFormat("HH:mm:ss.SSS"); public String format(LogRecord record) { Date date = new Date(record.getMillis()); return formatter.format(date) + ": " + record.getLevel() + ": " + record.getSourceClassName() + ": " + record.getSourceMethodName() + ": " + record.getMessage() + "\n"; } } private static Logger root = Logger.getLogger(""); static { Handler[] handlers = root.getHandlers(); for (Handler h:handlers) root.removeHandler(h); // log.setUseParentHandlers(false); Handler conHdlr = new ConsoleHandler(); conHdlr.setFormatter(new myFormatter()); conHdlr.setLevel(Level.FINEST); root.addHandler(conHdlr); root.setLevel(Level.FINEST); } private static long baseNano = System.nanoTime(); private static long baseMilli = System.currentTimeMillis(); static { long n1,n3,n5; long m2, m4; long dt = Integer.MAX_VALUE; for (int i=0;i<20;i++) { do { n1=System.nanoTime(); m2=System.currentTimeMillis(); n3=System.nanoTime(); m4=System.currentTimeMillis(); n5=System.nanoTime(); } while (m2==m4); long dt1 = n5-n1; if (dt1 < dt) { baseMilli = m4; baseNano = n3; dt = dt1; } } } public static double nanoTime() { double t = (System.nanoTime()-baseNano)/1e9; return (baseMilli/1e3)+t; } } No newline at end of file Loading
Demo1/.classpath +0 −2 Original line number Diff line number Diff line Loading @@ -6,8 +6,6 @@ <attribute name="maven.pomderived" value="true"/> </attributes> </classpathentry> <classpathentry kind="lib" path="/Users/hughes/Desktop/workspace3/jfreechart-1.0.19/lib/jfreechart-1.0.19.jar"/> <classpathentry kind="lib" path="/Users/hughes/Desktop/workspace3/jfreechart-1.0.19/lib/jcommon-1.0.23.jar"/> <classpathentry combineaccessrules="false" kind="src" path="/MyLogger"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"> <attributes> Loading
Demo1/pom.xml +5 −0 Original line number Diff line number Diff line Loading @@ -27,5 +27,10 @@ <artifactId>jackson-core-asl</artifactId> <version>1.9.13</version> </dependency> <dependency> <groupId>org.jfree</groupId> <artifactId>jfreechart</artifactId> <version>1.0.19</version> </dependency> </dependencies> </project> No newline at end of file
Demo1/src/com/jim/Demo1.java +0 −16 Original line number Diff line number Diff line package com.jim; import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowEvent; Loading Loading @@ -32,37 +30,23 @@ import javax.swing.JPanel; import javax.swing.ListSelectionModel; import javax.swing.SwingWorker; import javax.swing.Timer; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import org.codehaus.jackson.JsonNode; import org.codehaus.jackson.map.ObjectMapper; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartPanel; import org.jfree.chart.JFreeChart; import org.jfree.chart.axis.NumberAxis; import org.jfree.chart.axis.ValueAxis; import org.jfree.chart.plot.XYPlot; import org.jfree.chart.plot.dial.DialPlot; import org.jfree.chart.plot.dial.DialPointer; import org.jfree.chart.plot.dial.DialValueIndicator; import org.jfree.chart.plot.dial.StandardDialFrame; import org.jfree.chart.plot.dial.StandardDialScale; import org.jfree.chart.renderer.xy.DefaultXYItemRenderer; import org.jfree.chart.renderer.xy.StandardXYItemRenderer; import org.jfree.chart.renderer.xy.XYItemRenderer; import org.jfree.data.general.DefaultValueDataset; import org.jfree.data.time.Millisecond; import org.jfree.data.time.RegularTimePeriod; import org.jfree.data.time.TimeSeries; import org.jfree.data.time.TimeSeriesCollection; import org.jfree.data.xy.XYDataset; import org.jfree.ui.ApplicationFrame; import org.jfree.ui.RefineryUtilities; import com.jims.MyLogger; /** * A demonstration application showing a time series chart where you can * dynamically add (random) data by clicking on a button. Loading
Demo1/src/com/jim/MyLogger.java 0 → 100755 +98 −0 Original line number Diff line number Diff line package com.jim; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.logging.ConsoleHandler; import java.util.logging.Formatter; import java.util.logging.Handler; import java.util.logging.Level; import java.util.logging.LogRecord; import java.util.logging.Logger; public class MyLogger { private static String thisClass(int n) { StackTraceElement[] ste = new RuntimeException().getStackTrace(); if (n>ste.length) throw new Error("depth incorrect"); return ste[n].getClassName(); } public static Logger get(Level thisClassLevel, Level rootLevel) { Logger log = Logger.getLogger(thisClass(1)); log.setLevel(thisClassLevel); root.setLevel(rootLevel); return log; } public static Logger get(Level thisClassLevel) { Logger log = Logger.getLogger(thisClass(1)); log.setLevel(thisClassLevel); return log; } public static Logger get() { Logger log = Logger.getLogger(thisClass(1)); return log; } static class myFormatter extends Formatter { static final DateFormat formatter = new SimpleDateFormat("HH:mm:ss.SSS"); public String format(LogRecord record) { Date date = new Date(record.getMillis()); return formatter.format(date) + ": " + record.getLevel() + ": " + record.getSourceClassName() + ": " + record.getSourceMethodName() + ": " + record.getMessage() + "\n"; } } private static Logger root = Logger.getLogger(""); static { Handler[] handlers = root.getHandlers(); for (Handler h:handlers) root.removeHandler(h); // log.setUseParentHandlers(false); Handler conHdlr = new ConsoleHandler(); conHdlr.setFormatter(new myFormatter()); conHdlr.setLevel(Level.FINEST); root.addHandler(conHdlr); root.setLevel(Level.FINEST); } private static long baseNano = System.nanoTime(); private static long baseMilli = System.currentTimeMillis(); static { long n1,n3,n5; long m2, m4; long dt = Integer.MAX_VALUE; for (int i=0;i<20;i++) { do { n1=System.nanoTime(); m2=System.currentTimeMillis(); n3=System.nanoTime(); m4=System.currentTimeMillis(); n5=System.nanoTime(); } while (m2==m4); long dt1 = n5-n1; if (dt1 < dt) { baseMilli = m4; baseNano = n3; dt = dt1; } } } public static double nanoTime() { double t = (System.nanoTime()-baseNano)/1e9; return (baseMilli/1e3)+t; } } No newline at end of file