Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 11 jdk.jfr.jmod - JFR Module
JDK 11 jdk.jfr.jmod is the JMOD file for JDK 11 JFR module.
JDK 11 JFR module compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\jdk.jfr.jmod.
JDK 11 JFR module compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.
JDK 11 JFR module source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\jdk.jfr.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ jdk/jfr/internal/Repository.java
/* * Copyright (c) 2012, 2018, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package jdk.jfr.internal; import java.io.IOException; import java.nio.file.Path; import java.time.Instant; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.HashSet; import java.util.Set; import jdk.jfr.internal.SecuritySupport.SafePath; public final class Repository { private static final int MAX_REPO_CREATION_RETRIES = 1000; private static final JVM jvm = JVM.getJVM(); private static final Repository instance = new Repository(); public final static DateTimeFormatter REPO_DATE_FORMAT = DateTimeFormatter .ofPattern("yyyy_MM_dd_HH_mm_ss"); private final Set<SafePath> cleanupDirectories = new HashSet<>(); private SafePath baseLocation; private SafePath repository; private Repository() { } public static Repository getRepository() { return instance; } public synchronized void setBasePath(SafePath baseLocation) throws Exception { // Probe to see if repository can be created, needed for fail fast // during JVM startup or JFR.configure this.repository = createRepository(baseLocation); try { // Remove so we don't "leak" repositories, if JFR is never started // and shutdown hook not added. SecuritySupport.delete(repository); } catch (IOException ioe) { Logger.log(LogTag.JFR, LogLevel.INFO, "Could not delete disk repository " + repository); } this.baseLocation = baseLocation; } synchronized void ensureRepository() throws Exception { if (baseLocation == null) { setBasePath(SecuritySupport.JAVA_IO_TMPDIR); } } synchronized RepositoryChunk newChunk(Instant timestamp) { try { if (!SecuritySupport.existDirectory(repository)) { this.repository = createRepository(baseLocation); jvm.setRepositoryLocation(repository.toString()); cleanupDirectories.add(repository); } return new RepositoryChunk(repository, timestamp); } catch (Exception e) { String errorMsg = String.format("Could not create chunk in repository %s, %s", repository, e.getMessage()); Logger.log(LogTag.JFR, LogLevel.ERROR, errorMsg); jvm.abort(errorMsg); throw new InternalError("Could not abort after JFR disk creation error"); } } private static SafePath createRepository(SafePath basePath) throws Exception { SafePath canonicalBaseRepositoryPath = createRealBasePath(basePath); SafePath f = null; String basename = REPO_DATE_FORMAT.format(LocalDateTime.now()) + "_" + JVM.getJVM().getPid(); String name = basename; int i = 0; for (; i < MAX_REPO_CREATION_RETRIES; i++) { f = new SafePath(canonicalBaseRepositoryPath.toPath().resolve(name)); if (tryToUseAsRepository(f)) { break; } name = basename + "_" + i; } if (i == MAX_REPO_CREATION_RETRIES) { throw new Exception("Unable to create JFR repository directory using base location (" + basePath + ")"); } SafePath canonicalRepositoryPath = SecuritySupport.toRealPath(f); return canonicalRepositoryPath; } private static SafePath createRealBasePath(SafePath safePath) throws Exception { if (SecuritySupport.exists(safePath)) { if (!SecuritySupport.isWritable(safePath)) { throw new IOException("JFR repository directory (" + safePath.toString() + ") exists, but isn't writable"); } return SecuritySupport.toRealPath(safePath); } SafePath p = SecuritySupport.createDirectories(safePath); return SecuritySupport.toRealPath(p); } private static boolean tryToUseAsRepository(final SafePath path) { Path parent = path.toPath().getParent(); if (parent == null) { return false; } try { try { SecuritySupport.createDirectories(path); } catch (Exception e) { // file already existed or some other problem occurred } if (!SecuritySupport.exists(path)) { return false; } if (!SecuritySupport.isDirectory(path)) { return false; } return true; } catch (IOException io) { return false; } } synchronized void clear() { for (SafePath p : cleanupDirectories) { try { SecuritySupport.clearDirectory(p); Logger.log(LogTag.JFR, LogLevel.INFO, "Removed repository " + p); } catch (IOException e) { Logger.log(LogTag.JFR, LogLevel.ERROR, "Repository " + p + " could not be removed at shutdown: " + e.getMessage()); } } } public synchronized SafePath getRepositoryPath() { return repository; } }
⏎ jdk/jfr/internal/Repository.java
Or download all of them as a single archive file:
File name: jdk.jfr-11.0.1-src.zip File size: 237632 bytes Release date: 2018-11-04 Download
⇒ JDK 11 jdk.jlink.jmod - JLink Tool
2020-06-30, 37415👍, 0💬
Popular Posts:
Jackson is "the Java JSON library" or "the best JSON parser for Java". Or simply as "JSON for Java"....
commons-io-1.4.jar is the JAR file for Commons IO 1.4, which is a library of utilities to assist wit...
XStream is a simple library to serialize objects to XML and back again. JAR File Size and Download L...
How to perform XML Schema validation with dom\Writer.java provided in the Apache Xerces package? You...
What Is commons-codec-1.4.jar? commons-codec-1.4.jar is the JAR file for Apache Commons Codec 1.4, w...