sun.tools.java.ClassFile Java Examples
The following examples show how to use
sun.tools.java.ClassFile.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: Generator.java From TencentKona-8 with GNU General Public License v2.0 | 4 votes |
/** * Create and return a new instance of self. Subclasses * which need to do something other than default construction * must override this method. */ protected void generateOutputFiles (CompoundType topType, BatchEnvironment env, File destDir) { // Grab the 'alreadyChecked' HashSet from the environment... HashSet alreadyChecked = env.alreadyChecked; // Ask subclass for a list of output types... OutputType[] types = getOutputTypesFor(topType,alreadyChecked); // Process each file... for (int i = 0; i < types.length; i++) { OutputType current = types[i]; String className = current.getName(); File file = getFileFor(current,destDir); boolean sourceFile = false; // Do we need to generate this file? if (requiresGeneration(file,current.getType())) { // Yes. If java source file, add to environment so will be compiled... if (file.getName().endsWith(".java")) { sourceFile = compileJavaSourceFile(current); // Are we supposeded to compile this one? if (sourceFile) { env.addGeneratedFile(file); } } // Now create an output stream and ask subclass to fill it up... try { IndentingWriter out = new IndentingWriter( new OutputStreamWriter(new FileOutputStream(file)),INDENT_STEP,TAB_SIZE); long startTime = 0; if (env.verbose()) { startTime = System.currentTimeMillis(); } writeOutputFor(types[i],alreadyChecked,out); out.close(); if (env.verbose()) { long duration = System.currentTimeMillis() - startTime; env.output(Main.getText("rmic.generated", file.getPath(), Long.toString(duration))); } if (sourceFile) { env.parseFile(new ClassFile(file)); } } catch (IOException e) { env.error(0, "cant.write", file.toString()); return; } } else { // No, say so if we need to... if (env.verbose()) { env.output(Main.getText("rmic.previously.generated", file.getPath())); } } } }
Example #2
Source File: Generator.java From jdk8u60 with GNU General Public License v2.0 | 4 votes |
/** * Create and return a new instance of self. Subclasses * which need to do something other than default construction * must override this method. */ protected void generateOutputFiles (CompoundType topType, BatchEnvironment env, File destDir) { // Grab the 'alreadyChecked' HashSet from the environment... HashSet alreadyChecked = env.alreadyChecked; // Ask subclass for a list of output types... OutputType[] types = getOutputTypesFor(topType,alreadyChecked); // Process each file... for (int i = 0; i < types.length; i++) { OutputType current = types[i]; String className = current.getName(); File file = getFileFor(current,destDir); boolean sourceFile = false; // Do we need to generate this file? if (requiresGeneration(file,current.getType())) { // Yes. If java source file, add to environment so will be compiled... if (file.getName().endsWith(".java")) { sourceFile = compileJavaSourceFile(current); // Are we supposeded to compile this one? if (sourceFile) { env.addGeneratedFile(file); } } // Now create an output stream and ask subclass to fill it up... try { IndentingWriter out = new IndentingWriter( new OutputStreamWriter(new FileOutputStream(file)),INDENT_STEP,TAB_SIZE); long startTime = 0; if (env.verbose()) { startTime = System.currentTimeMillis(); } writeOutputFor(types[i],alreadyChecked,out); out.close(); if (env.verbose()) { long duration = System.currentTimeMillis() - startTime; env.output(Main.getText("rmic.generated", file.getPath(), Long.toString(duration))); } if (sourceFile) { env.parseFile(new ClassFile(file)); } } catch (IOException e) { env.error(0, "cant.write", file.toString()); return; } } else { // No, say so if we need to... if (env.verbose()) { env.output(Main.getText("rmic.previously.generated", file.getPath())); } } } }
Example #3
Source File: Generator.java From openjdk-jdk8u with GNU General Public License v2.0 | 4 votes |
/** * Create and return a new instance of self. Subclasses * which need to do something other than default construction * must override this method. */ protected void generateOutputFiles (CompoundType topType, BatchEnvironment env, File destDir) { // Grab the 'alreadyChecked' HashSet from the environment... HashSet alreadyChecked = env.alreadyChecked; // Ask subclass for a list of output types... OutputType[] types = getOutputTypesFor(topType,alreadyChecked); // Process each file... for (int i = 0; i < types.length; i++) { OutputType current = types[i]; String className = current.getName(); File file = getFileFor(current,destDir); boolean sourceFile = false; // Do we need to generate this file? if (requiresGeneration(file,current.getType())) { // Yes. If java source file, add to environment so will be compiled... if (file.getName().endsWith(".java")) { sourceFile = compileJavaSourceFile(current); // Are we supposeded to compile this one? if (sourceFile) { env.addGeneratedFile(file); } } // Now create an output stream and ask subclass to fill it up... try { IndentingWriter out = new IndentingWriter( new OutputStreamWriter(new FileOutputStream(file)),INDENT_STEP,TAB_SIZE); long startTime = 0; if (env.verbose()) { startTime = System.currentTimeMillis(); } writeOutputFor(types[i],alreadyChecked,out); out.close(); if (env.verbose()) { long duration = System.currentTimeMillis() - startTime; env.output(Main.getText("rmic.generated", file.getPath(), Long.toString(duration))); } if (sourceFile) { env.parseFile(new ClassFile(file)); } } catch (IOException e) { env.error(0, "cant.write", file.toString()); return; } } else { // No, say so if we need to... if (env.verbose()) { env.output(Main.getText("rmic.previously.generated", file.getPath())); } } } }
Example #4
Source File: Generator.java From openjdk-jdk8u-backup with GNU General Public License v2.0 | 4 votes |
/** * Create and return a new instance of self. Subclasses * which need to do something other than default construction * must override this method. */ protected void generateOutputFiles (CompoundType topType, BatchEnvironment env, File destDir) { // Grab the 'alreadyChecked' HashSet from the environment... HashSet alreadyChecked = env.alreadyChecked; // Ask subclass for a list of output types... OutputType[] types = getOutputTypesFor(topType,alreadyChecked); // Process each file... for (int i = 0; i < types.length; i++) { OutputType current = types[i]; String className = current.getName(); File file = getFileFor(current,destDir); boolean sourceFile = false; // Do we need to generate this file? if (requiresGeneration(file,current.getType())) { // Yes. If java source file, add to environment so will be compiled... if (file.getName().endsWith(".java")) { sourceFile = compileJavaSourceFile(current); // Are we supposeded to compile this one? if (sourceFile) { env.addGeneratedFile(file); } } // Now create an output stream and ask subclass to fill it up... try { IndentingWriter out = new IndentingWriter( new OutputStreamWriter(new FileOutputStream(file)),INDENT_STEP,TAB_SIZE); long startTime = 0; if (env.verbose()) { startTime = System.currentTimeMillis(); } writeOutputFor(types[i],alreadyChecked,out); out.close(); if (env.verbose()) { long duration = System.currentTimeMillis() - startTime; env.output(Main.getText("rmic.generated", file.getPath(), Long.toString(duration))); } if (sourceFile) { env.parseFile(new ClassFile(file)); } } catch (IOException e) { env.error(0, "cant.write", file.toString()); return; } } else { // No, say so if we need to... if (env.verbose()) { env.output(Main.getText("rmic.previously.generated", file.getPath())); } } } }
Example #5
Source File: Generator.java From openjdk-jdk9 with GNU General Public License v2.0 | 4 votes |
/** * Create and return a new instance of self. Subclasses * which need to do something other than default construction * must override this method. */ protected void generateOutputFiles (CompoundType topType, BatchEnvironment env, File destDir) { // Grab the 'alreadyChecked' HashSet from the environment... HashSet alreadyChecked = env.alreadyChecked; // Ask subclass for a list of output types... OutputType[] types = getOutputTypesFor(topType,alreadyChecked); // Process each file... for (int i = 0; i < types.length; i++) { OutputType current = types[i]; String className = current.getName(); File file = getFileFor(current,destDir); boolean sourceFile = false; // Do we need to generate this file? if (requiresGeneration(file,current.getType())) { // Yes. If java source file, add to environment so will be compiled... if (file.getName().endsWith(".java")) { sourceFile = compileJavaSourceFile(current); // Are we supposeded to compile this one? if (sourceFile) { env.addGeneratedFile(file); } } // Now create an output stream and ask subclass to fill it up... try { IndentingWriter out = new IndentingWriter( new OutputStreamWriter(new FileOutputStream(file)),INDENT_STEP,TAB_SIZE); long startTime = 0; if (env.verbose()) { startTime = System.currentTimeMillis(); } writeOutputFor(types[i],alreadyChecked,out); out.close(); if (env.verbose()) { long duration = System.currentTimeMillis() - startTime; env.output(Main.getText("rmic.generated", file.getPath(), Long.toString(duration))); } if (sourceFile) { env.parseFile(ClassFile.newClassFile(file)); } } catch (IOException e) { env.error(0, "cant.write", file.toString()); return; } } else { // No, say so if we need to... if (env.verbose()) { env.output(Main.getText("rmic.previously.generated", file.getPath())); } } } }
Example #6
Source File: Generator.java From hottub with GNU General Public License v2.0 | 4 votes |
/** * Create and return a new instance of self. Subclasses * which need to do something other than default construction * must override this method. */ protected void generateOutputFiles (CompoundType topType, BatchEnvironment env, File destDir) { // Grab the 'alreadyChecked' HashSet from the environment... HashSet alreadyChecked = env.alreadyChecked; // Ask subclass for a list of output types... OutputType[] types = getOutputTypesFor(topType,alreadyChecked); // Process each file... for (int i = 0; i < types.length; i++) { OutputType current = types[i]; String className = current.getName(); File file = getFileFor(current,destDir); boolean sourceFile = false; // Do we need to generate this file? if (requiresGeneration(file,current.getType())) { // Yes. If java source file, add to environment so will be compiled... if (file.getName().endsWith(".java")) { sourceFile = compileJavaSourceFile(current); // Are we supposeded to compile this one? if (sourceFile) { env.addGeneratedFile(file); } } // Now create an output stream and ask subclass to fill it up... try { IndentingWriter out = new IndentingWriter( new OutputStreamWriter(new FileOutputStream(file)),INDENT_STEP,TAB_SIZE); long startTime = 0; if (env.verbose()) { startTime = System.currentTimeMillis(); } writeOutputFor(types[i],alreadyChecked,out); out.close(); if (env.verbose()) { long duration = System.currentTimeMillis() - startTime; env.output(Main.getText("rmic.generated", file.getPath(), Long.toString(duration))); } if (sourceFile) { env.parseFile(new ClassFile(file)); } } catch (IOException e) { env.error(0, "cant.write", file.toString()); return; } } else { // No, say so if we need to... if (env.verbose()) { env.output(Main.getText("rmic.previously.generated", file.getPath())); } } } }
Example #7
Source File: Generator.java From openjdk-8-source with GNU General Public License v2.0 | 4 votes |
/** * Create and return a new instance of self. Subclasses * which need to do something other than default construction * must override this method. */ protected void generateOutputFiles (CompoundType topType, BatchEnvironment env, File destDir) { // Grab the 'alreadyChecked' HashSet from the environment... HashSet alreadyChecked = env.alreadyChecked; // Ask subclass for a list of output types... OutputType[] types = getOutputTypesFor(topType,alreadyChecked); // Process each file... for (int i = 0; i < types.length; i++) { OutputType current = types[i]; String className = current.getName(); File file = getFileFor(current,destDir); boolean sourceFile = false; // Do we need to generate this file? if (requiresGeneration(file,current.getType())) { // Yes. If java source file, add to environment so will be compiled... if (file.getName().endsWith(".java")) { sourceFile = compileJavaSourceFile(current); // Are we supposeded to compile this one? if (sourceFile) { env.addGeneratedFile(file); } } // Now create an output stream and ask subclass to fill it up... try { IndentingWriter out = new IndentingWriter( new OutputStreamWriter(new FileOutputStream(file)),INDENT_STEP,TAB_SIZE); long startTime = 0; if (env.verbose()) { startTime = System.currentTimeMillis(); } writeOutputFor(types[i],alreadyChecked,out); out.close(); if (env.verbose()) { long duration = System.currentTimeMillis() - startTime; env.output(Main.getText("rmic.generated", file.getPath(), Long.toString(duration))); } if (sourceFile) { env.parseFile(new ClassFile(file)); } } catch (IOException e) { env.error(0, "cant.write", file.toString()); return; } } else { // No, say so if we need to... if (env.verbose()) { env.output(Main.getText("rmic.previously.generated", file.getPath())); } } } }
Example #8
Source File: Generator.java From openjdk-8 with GNU General Public License v2.0 | 4 votes |
/** * Create and return a new instance of self. Subclasses * which need to do something other than default construction * must override this method. */ protected void generateOutputFiles (CompoundType topType, BatchEnvironment env, File destDir) { // Grab the 'alreadyChecked' HashSet from the environment... HashSet alreadyChecked = env.alreadyChecked; // Ask subclass for a list of output types... OutputType[] types = getOutputTypesFor(topType,alreadyChecked); // Process each file... for (int i = 0; i < types.length; i++) { OutputType current = types[i]; String className = current.getName(); File file = getFileFor(current,destDir); boolean sourceFile = false; // Do we need to generate this file? if (requiresGeneration(file,current.getType())) { // Yes. If java source file, add to environment so will be compiled... if (file.getName().endsWith(".java")) { sourceFile = compileJavaSourceFile(current); // Are we supposeded to compile this one? if (sourceFile) { env.addGeneratedFile(file); } } // Now create an output stream and ask subclass to fill it up... try { IndentingWriter out = new IndentingWriter( new OutputStreamWriter(new FileOutputStream(file)),INDENT_STEP,TAB_SIZE); long startTime = 0; if (env.verbose()) { startTime = System.currentTimeMillis(); } writeOutputFor(types[i],alreadyChecked,out); out.close(); if (env.verbose()) { long duration = System.currentTimeMillis() - startTime; env.output(Main.getText("rmic.generated", file.getPath(), Long.toString(duration))); } if (sourceFile) { env.parseFile(new ClassFile(file)); } } catch (IOException e) { env.error(0, "cant.write", file.toString()); return; } } else { // No, say so if we need to... if (env.verbose()) { env.output(Main.getText("rmic.previously.generated", file.getPath())); } } } }
Example #9
Source File: Generator.java From TencentKona-8 with GNU General Public License v2.0 | 2 votes |
/** * Return true if the specified file needs generation. */ public boolean requiresGeneration (File target, Type theType) { boolean result = alwaysGenerate; if (!result) { // Get a ClassFile instance for base source or class // file. We use ClassFile so that if the base is in // a zip file, we can still get at it's mod time... ClassFile baseFile; ClassPath path = env.getClassPath(); String className = theType.getQualifiedName().replace('.',File.separatorChar); // First try the source file... baseFile = path.getFile(className + ".source"); if (baseFile == null) { // Then try class file... baseFile = path.getFile(className + ".class"); } // Do we have a baseFile? if (baseFile != null) { // Yes, grab baseFile's mod time... long baseFileMod = baseFile.lastModified(); // Get a File instance for the target. If it is a source // file, create a class file instead since the source file // will frequently be deleted... String targetName = IDLNames.replace(target.getName(),".java",".class"); String parentPath = target.getParent(); File targetFile = new File(parentPath,targetName); // Does the target file exist? if (targetFile.exists()) { // Yes, so grab it's mod time... long targetFileMod = targetFile.lastModified(); // Set result... result = targetFileMod < baseFileMod; } else { // No, so we must generate... result = true; } } else { // No, so we must generate... result = true; } } return result; }
Example #10
Source File: Generator.java From jdk8u60 with GNU General Public License v2.0 | 2 votes |
/** * Return true if the specified file needs generation. */ public boolean requiresGeneration (File target, Type theType) { boolean result = alwaysGenerate; if (!result) { // Get a ClassFile instance for base source or class // file. We use ClassFile so that if the base is in // a zip file, we can still get at it's mod time... ClassFile baseFile; ClassPath path = env.getClassPath(); String className = theType.getQualifiedName().replace('.',File.separatorChar); // First try the source file... baseFile = path.getFile(className + ".source"); if (baseFile == null) { // Then try class file... baseFile = path.getFile(className + ".class"); } // Do we have a baseFile? if (baseFile != null) { // Yes, grab baseFile's mod time... long baseFileMod = baseFile.lastModified(); // Get a File instance for the target. If it is a source // file, create a class file instead since the source file // will frequently be deleted... String targetName = IDLNames.replace(target.getName(),".java",".class"); String parentPath = target.getParent(); File targetFile = new File(parentPath,targetName); // Does the target file exist? if (targetFile.exists()) { // Yes, so grab it's mod time... long targetFileMod = targetFile.lastModified(); // Set result... result = targetFileMod < baseFileMod; } else { // No, so we must generate... result = true; } } else { // No, so we must generate... result = true; } } return result; }
Example #11
Source File: Generator.java From openjdk-jdk8u with GNU General Public License v2.0 | 2 votes |
/** * Return true if the specified file needs generation. */ public boolean requiresGeneration (File target, Type theType) { boolean result = alwaysGenerate; if (!result) { // Get a ClassFile instance for base source or class // file. We use ClassFile so that if the base is in // a zip file, we can still get at it's mod time... ClassFile baseFile; ClassPath path = env.getClassPath(); String className = theType.getQualifiedName().replace('.',File.separatorChar); // First try the source file... baseFile = path.getFile(className + ".source"); if (baseFile == null) { // Then try class file... baseFile = path.getFile(className + ".class"); } // Do we have a baseFile? if (baseFile != null) { // Yes, grab baseFile's mod time... long baseFileMod = baseFile.lastModified(); // Get a File instance for the target. If it is a source // file, create a class file instead since the source file // will frequently be deleted... String targetName = IDLNames.replace(target.getName(),".java",".class"); String parentPath = target.getParent(); File targetFile = new File(parentPath,targetName); // Does the target file exist? if (targetFile.exists()) { // Yes, so grab it's mod time... long targetFileMod = targetFile.lastModified(); // Set result... result = targetFileMod < baseFileMod; } else { // No, so we must generate... result = true; } } else { // No, so we must generate... result = true; } } return result; }
Example #12
Source File: Generator.java From openjdk-jdk8u-backup with GNU General Public License v2.0 | 2 votes |
/** * Return true if the specified file needs generation. */ public boolean requiresGeneration (File target, Type theType) { boolean result = alwaysGenerate; if (!result) { // Get a ClassFile instance for base source or class // file. We use ClassFile so that if the base is in // a zip file, we can still get at it's mod time... ClassFile baseFile; ClassPath path = env.getClassPath(); String className = theType.getQualifiedName().replace('.',File.separatorChar); // First try the source file... baseFile = path.getFile(className + ".source"); if (baseFile == null) { // Then try class file... baseFile = path.getFile(className + ".class"); } // Do we have a baseFile? if (baseFile != null) { // Yes, grab baseFile's mod time... long baseFileMod = baseFile.lastModified(); // Get a File instance for the target. If it is a source // file, create a class file instead since the source file // will frequently be deleted... String targetName = IDLNames.replace(target.getName(),".java",".class"); String parentPath = target.getParent(); File targetFile = new File(parentPath,targetName); // Does the target file exist? if (targetFile.exists()) { // Yes, so grab it's mod time... long targetFileMod = targetFile.lastModified(); // Set result... result = targetFileMod < baseFileMod; } else { // No, so we must generate... result = true; } } else { // No, so we must generate... result = true; } } return result; }
Example #13
Source File: Generator.java From openjdk-jdk9 with GNU General Public License v2.0 | 2 votes |
/** * Return true if the specified file needs generation. */ public boolean requiresGeneration (File target, Type theType) { boolean result = alwaysGenerate; if (!result) { // Get a ClassFile instance for base source or class // file. We use ClassFile so that if the base is in // a zip file, we can still get at it's mod time... ClassFile baseFile; ClassPath path = env.getClassPath(); String className = theType.getQualifiedName().replace('.',File.separatorChar); // First try the source file... baseFile = path.getFile(className + ".source"); if (baseFile == null) { // Then try class file... baseFile = path.getFile(className + ".class"); } // Do we have a baseFile? if (baseFile != null) { // Yes, grab baseFile's mod time... long baseFileMod = baseFile.lastModified(); // Get a File instance for the target. If it is a source // file, create a class file instead since the source file // will frequently be deleted... String targetName = IDLNames.replace(target.getName(),".java",".class"); String parentPath = target.getParent(); File targetFile = new File(parentPath,targetName); // Does the target file exist? if (targetFile.exists()) { // Yes, so grab it's mod time... long targetFileMod = targetFile.lastModified(); // Set result... result = targetFileMod < baseFileMod; } else { // No, so we must generate... result = true; } } else { // No, so we must generate... result = true; } } return result; }
Example #14
Source File: Generator.java From hottub with GNU General Public License v2.0 | 2 votes |
/** * Return true if the specified file needs generation. */ public boolean requiresGeneration (File target, Type theType) { boolean result = alwaysGenerate; if (!result) { // Get a ClassFile instance for base source or class // file. We use ClassFile so that if the base is in // a zip file, we can still get at it's mod time... ClassFile baseFile; ClassPath path = env.getClassPath(); String className = theType.getQualifiedName().replace('.',File.separatorChar); // First try the source file... baseFile = path.getFile(className + ".source"); if (baseFile == null) { // Then try class file... baseFile = path.getFile(className + ".class"); } // Do we have a baseFile? if (baseFile != null) { // Yes, grab baseFile's mod time... long baseFileMod = baseFile.lastModified(); // Get a File instance for the target. If it is a source // file, create a class file instead since the source file // will frequently be deleted... String targetName = IDLNames.replace(target.getName(),".java",".class"); String parentPath = target.getParent(); File targetFile = new File(parentPath,targetName); // Does the target file exist? if (targetFile.exists()) { // Yes, so grab it's mod time... long targetFileMod = targetFile.lastModified(); // Set result... result = targetFileMod < baseFileMod; } else { // No, so we must generate... result = true; } } else { // No, so we must generate... result = true; } } return result; }
Example #15
Source File: Generator.java From openjdk-8-source with GNU General Public License v2.0 | 2 votes |
/** * Return true if the specified file needs generation. */ public boolean requiresGeneration (File target, Type theType) { boolean result = alwaysGenerate; if (!result) { // Get a ClassFile instance for base source or class // file. We use ClassFile so that if the base is in // a zip file, we can still get at it's mod time... ClassFile baseFile; ClassPath path = env.getClassPath(); String className = theType.getQualifiedName().replace('.',File.separatorChar); // First try the source file... baseFile = path.getFile(className + ".source"); if (baseFile == null) { // Then try class file... baseFile = path.getFile(className + ".class"); } // Do we have a baseFile? if (baseFile != null) { // Yes, grab baseFile's mod time... long baseFileMod = baseFile.lastModified(); // Get a File instance for the target. If it is a source // file, create a class file instead since the source file // will frequently be deleted... String targetName = IDLNames.replace(target.getName(),".java",".class"); String parentPath = target.getParent(); File targetFile = new File(parentPath,targetName); // Does the target file exist? if (targetFile.exists()) { // Yes, so grab it's mod time... long targetFileMod = targetFile.lastModified(); // Set result... result = targetFileMod < baseFileMod; } else { // No, so we must generate... result = true; } } else { // No, so we must generate... result = true; } } return result; }
Example #16
Source File: Generator.java From openjdk-8 with GNU General Public License v2.0 | 2 votes |
/** * Return true if the specified file needs generation. */ public boolean requiresGeneration (File target, Type theType) { boolean result = alwaysGenerate; if (!result) { // Get a ClassFile instance for base source or class // file. We use ClassFile so that if the base is in // a zip file, we can still get at it's mod time... ClassFile baseFile; ClassPath path = env.getClassPath(); String className = theType.getQualifiedName().replace('.',File.separatorChar); // First try the source file... baseFile = path.getFile(className + ".source"); if (baseFile == null) { // Then try class file... baseFile = path.getFile(className + ".class"); } // Do we have a baseFile? if (baseFile != null) { // Yes, grab baseFile's mod time... long baseFileMod = baseFile.lastModified(); // Get a File instance for the target. If it is a source // file, create a class file instead since the source file // will frequently be deleted... String targetName = IDLNames.replace(target.getName(),".java",".class"); String parentPath = target.getParent(); File targetFile = new File(parentPath,targetName); // Does the target file exist? if (targetFile.exists()) { // Yes, so grab it's mod time... long targetFileMod = targetFile.lastModified(); // Set result... result = targetFileMod < baseFileMod; } else { // No, so we must generate... result = true; } } else { // No, so we must generate... result = true; } } return result; }