Cleaning up JEP-349-branch
authoregahlin
Wed, 18 Sep 2019 08:00:36 +0200
branchJEP-349-branch
changeset 58200 2d147d680311
parent 58197 0ef79bd7fb5c
child 58201 2654d1b665bf
Cleaning up
src/jdk.jfr/share/classes/jdk/jfr/consumer/EventStream.java
src/jdk.jfr/share/classes/jdk/jfr/consumer/RecordingStream.java
src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/AbstractEventStream.java
src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/Dispatcher.java
src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/FileAccess.java
src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/JdkJfrConsumer.java
src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/ObjectContext.java
src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/ObjectFactory.java
src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/RepositoryFiles.java
src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/StreamConfiguration.java
src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/TimeConverter.java
--- a/src/jdk.jfr/share/classes/jdk/jfr/consumer/EventStream.java	Wed Sep 18 03:45:46 2019 +0200
+++ b/src/jdk.jfr/share/classes/jdk/jfr/consumer/EventStream.java	Wed Sep 18 08:00:36 2019 +0200
@@ -43,23 +43,20 @@
 /**
  * Represents a stream of events.
  * <p>
- * The EventStream interface is not to be implemented and future version may
- * prevent this completely.
- * <p>
  * A stream is a sequence of events and the way to interact with a stream is to
- * register actions.
+ * register actions. The {@code EventStream} interface is not to be implemented
+ * and future versions of the JDK may prevent this completely.
  * <p>
  * To receive a notification when an event arrives, register an action using the
  * {@link #onEvent(Consumer)} method. To filter the stream for an event with a
  * specific name, use {@link #onEvent(String, Consumer)} method.
- *
+ * <p>
  * By default, the same {@code RecordedEvent} object can be used for
  * representing two or more distinct events. The object can be delivered
  * multiple times to the same action as well as to other actions. If the life
- * cycle of the event object is needed outside the scope of an action, the
+ * cycle of the event object exceeds the scope of an action, the
  * {@link #setReuse(boolean)} method should be set to {@code false} so that a
  * new object is allocated for each event.
- *
  * <p>
  * Events are delivered in batches. To receive a notification when a batch is
  * complete, register an action using the {@link #onFlush(Runnable)} method.
@@ -78,10 +75,11 @@
  * {@link #awaitTermination(Duration)} method.
  * <p>
  * When a stream ends it is automatically closed. To manually stop processing of
- * events, close the stream with the {@link #close()} method. A stream can also
- * be automatically closed in exceptional circumstances, for instance if the JVM
- * exits. To receive a notification in any of these occasions, use the
- * {@link #onClose(Runnable)} method to register an action.
+ * events, close the stream by invoking the {@link #close()} method. A stream
+ * can also be automatically closed in exceptional circumstances, for example
+ * if the JVM that is being monitored exits. To receive a notification in any of
+ * these occasions, use the {@link #onClose(Runnable)} method to register an
+ * action.
  * <p>
  * If an unexpected exception occurs in an action, it is possible to catch the
  * exception in an error handler. An error handler can be registered using the
@@ -89,8 +87,9 @@
  * default behavior is to print the exception and its backtrace to the standard
  * error stream.
  * <p>
- * The following example shows how an {@code EventStream} can be used to
- * listen to events on a JVM running Flight Recorder
+ * The following example shows how an {@code EventStream} can be used to listen
+ * to events on a JVM running Flight Recorder
+ *
  * <pre>
  * <code>
  * try (EventStream es = EventStream.openRepository()) {
@@ -116,6 +115,7 @@
  * <p>
  * To start recording together with the stream, see {@link RecordingStream}.
  *
+ * @since 14
  */
 public interface EventStream extends AutoCloseable {
     /**
--- a/src/jdk.jfr/share/classes/jdk/jfr/consumer/RecordingStream.java	Wed Sep 18 03:45:46 2019 +0200
+++ b/src/jdk.jfr/share/classes/jdk/jfr/consumer/RecordingStream.java	Wed Sep 18 08:00:36 2019 +0200
@@ -51,7 +51,6 @@
  * The following example shows how to record events using the default
  * configuration and print the Garbage Collection, CPU Load and JVM Information
  * event to standard out.
- *
  * <pre>
  * <code>
  * Configuration c = Configuration.getConfiguration("default");
@@ -65,6 +64,7 @@
  * </code>
  * </pre>
  *
+ * @since 14
  */
 public final class RecordingStream implements AutoCloseable, EventStream {
 
--- a/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/AbstractEventStream.java	Wed Sep 18 03:45:46 2019 +0200
+++ b/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/AbstractEventStream.java	Wed Sep 18 08:00:36 2019 +0200
@@ -45,14 +45,7 @@
 
 /*
  * Purpose of this class is to simplify the implementation of
- * an event stream. In particular, it handles:
- *
- * - configuration storage
- * - atomic updates to a configuration
- * - dispatch mechanism
- * - error handling
- * - security
- *
+ * an event stream.
  */
 abstract class AbstractEventStream implements EventStream {
     private final static AtomicLong counter = new AtomicLong(1);
--- a/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/Dispatcher.java	Wed Sep 18 03:45:46 2019 +0200
+++ b/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/Dispatcher.java	Wed Sep 18 08:00:36 2019 +0200
@@ -1,3 +1,28 @@
+/*
+ * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
 package jdk.jfr.internal.consumer;
 
 import java.time.Instant;
@@ -51,7 +76,7 @@
     private EventType cacheEventType;
     private EventDispatcher[] cacheDispatchers;
 
-    @SuppressWarnings({"unchecked","rawtypes"})
+    @SuppressWarnings({"rawtypes", "unchecked"})
     public Dispatcher(StreamConfiguration c) {
         this.flushActions = c.flushActions.toArray(new Runnable[0]);
         this.closeActions = c.closeActions.toArray(new Runnable[0]);
--- a/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/FileAccess.java	Wed Sep 18 03:45:46 2019 +0200
+++ b/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/FileAccess.java	Wed Sep 18 08:00:36 2019 +0200
@@ -55,10 +55,12 @@
             return Files.newDirectoryStream(dir);
         }
 
+        @Override
         public String getAbsolutePath(File f) throws IOException {
             return f.getAbsolutePath();
         }
 
+        @Override
         public long length(File f) throws IOException {
             return f.length();
         }
--- a/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/JdkJfrConsumer.java	Wed Sep 18 03:45:46 2019 +0200
+++ b/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/JdkJfrConsumer.java	Wed Sep 18 08:00:36 2019 +0200
@@ -22,6 +22,7 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
+
 package jdk.jfr.internal.consumer;
 
 import java.io.IOException;
@@ -55,7 +56,6 @@
         } catch (ClassNotFoundException e) {
             throw new InternalError("Should not happen");
         }
-
     }
 
     public static void setAccess(JdkJfrConsumer access) {
--- a/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/ObjectContext.java	Wed Sep 18 03:45:46 2019 +0200
+++ b/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/ObjectContext.java	Wed Sep 18 08:00:36 2019 +0200
@@ -22,6 +22,7 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
+
 package jdk.jfr.internal.consumer;
 
 import java.time.ZoneId;
--- a/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/ObjectFactory.java	Wed Sep 18 03:45:46 2019 +0200
+++ b/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/ObjectFactory.java	Wed Sep 18 08:00:36 2019 +0200
@@ -70,7 +70,6 @@
         return null;
     }
 
-
     private static ObjectFactory<RecordedClass> createClassFactory(Type type, TimeConverter timeConverter) {
         return new ObjectFactory<RecordedClass>(type, timeConverter) {
             @Override
--- a/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/RepositoryFiles.java	Wed Sep 18 03:45:46 2019 +0200
+++ b/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/RepositoryFiles.java	Wed Sep 18 08:00:36 2019 +0200
@@ -22,6 +22,7 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
+
 package jdk.jfr.internal.consumer;
 
 import java.io.IOException;
@@ -56,8 +57,9 @@
     private final NavigableMap<Long, Path> pathSet = new TreeMap<>();
     private final Map<Path, Long> pathLookup = new HashMap<>();
     private final Path repository;
+    private final Object waitObject;
+
     private volatile boolean closed;
-    private final Object waitObject;
 
     RepositoryFiles(FileAccess fileAccess, Path repository) {
         this.repository = repository;
--- a/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/StreamConfiguration.java	Wed Sep 18 03:45:46 2019 +0200
+++ b/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/StreamConfiguration.java	Wed Sep 18 08:00:36 2019 +0200
@@ -1,3 +1,28 @@
+/*
+ * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
 package jdk.jfr.internal.consumer;
 
 import java.time.Instant;
--- a/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/TimeConverter.java	Wed Sep 18 03:45:46 2019 +0200
+++ b/src/jdk.jfr/share/classes/jdk/jfr/internal/consumer/TimeConverter.java	Wed Sep 18 08:00:36 2019 +0200
@@ -49,15 +49,6 @@
         this.zoneOffet = zoneOfSet(rawOffset);
     }
 
-    private ZoneOffset zoneOfSet(int rawOffset) {
-        try {
-            return ZoneOffset.ofTotalSeconds(rawOffset / 1000);
-        } catch (DateTimeException dte) {
-            Logger.log(LogTag.JFR_SYSTEM_PARSER, LogLevel.INFO, "Could not create ZoneOffset from raw offset " + rawOffset);
-        }
-        return ZoneOffset.UTC;
-    }
-
     public long convertTimestamp(long ticks) {
         return startNanos + (long) ((ticks - startTicks) / divisor);
     }
@@ -69,4 +60,13 @@
     public ZoneOffset getZoneOffset() {
         return zoneOffet;
     }
+
+    private ZoneOffset zoneOfSet(int rawOffset) {
+        try {
+            return ZoneOffset.ofTotalSeconds(rawOffset / 1000);
+        } catch (DateTimeException dte) {
+            Logger.log(LogTag.JFR_SYSTEM_PARSER, LogLevel.INFO, "Could not create ZoneOffset from raw offset " + rawOffset);
+        }
+        return ZoneOffset.UTC;
+    }
 }