FileObject folders are now displayed in lexical order.
Changed action registration location from primary file object menu to to Tools/Change License Header.
1.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/api/Customizable.java Sun Dec 30 21:11:51 2012 +0100
1.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/api/Customizable.java Wed Jan 02 13:38:30 2013 +0100
1.3 @@ -36,7 +36,6 @@
1.4 *
1.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
1.6 */
1.7 -
1.8 package org.netbeans.modules.licensechanger.api;
1.9
1.10 import java.awt.Component;
1.11 @@ -47,5 +46,6 @@
1.12 * @author Tim Boudreau
1.13 */
1.14 public interface Customizable {
1.15 +
1.16 public Component getCustomizer();
1.17 }
2.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/api/FileHandler.java Sun Dec 30 21:11:51 2012 +0100
2.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/api/FileHandler.java Wed Jan 02 13:38:30 2013 +0100
2.3 @@ -40,9 +40,7 @@
2.4
2.5 import java.io.IOException;
2.6 import java.io.InputStream;
2.7 -import java.io.Reader;
2.8 import java.io.StringWriter;
2.9 -import java.io.Writer;
2.10 import java.util.ArrayList;
2.11 import java.util.Date;
2.12 import java.util.List;
2.13 @@ -51,7 +49,6 @@
2.14 import java.util.regex.Matcher;
2.15 import java.util.regex.Pattern;
2.16 import javax.script.Bindings;
2.17 -import javax.script.ScriptContext;
2.18 import javax.script.ScriptEngine;
2.19 import javax.script.ScriptEngineManager;
2.20 import javax.script.ScriptException;
2.21 @@ -87,9 +84,10 @@
2.22
2.23 /**
2.24 * <p>Uses the freemarker template engine to resolve the licenseText.</p>
2.25 - *
2.26 - * <p>If no freemarker script engine is found, a {@link RuntimeException} is thrown.</p>
2.27 - *
2.28 + *
2.29 + * <p>If no freemarker script engine is found, a {@link RuntimeException} is
2.30 + * thrown.</p>
2.31 + *
2.32 * <p>This method will access user information under
2.33 * {@code Templates/Properties/User.properties} in order to resolve various
2.34 * tokens, e.g. 'user'. If that file does not exist, a
2.35 @@ -97,22 +95,26 @@
2.36 * {@link IOException}. Should the freemarker engine encounter a
2.37 * {@link ScriptException}, this will also be wrapped in a
2.38 * {@link RuntimeException}.</p>
2.39 - *
2.40 - * <p>The additionalBindings parameter may be used to supplement or override the information
2.41 - * retrieved from <code>User.properties</code>.</p>
2.42 - *
2.43 - * <p>The implementation will look for tokens <code>${licenseFirst}</code>, <code>${licensePrefix}</code>, and
2.44 - * <code>${licenseLast}</code> to determine whether the licenseText has already been interpolated or if it needs
2.45 - * escaping.
2.46 + *
2.47 + * <p>The additionalBindings parameter may be used to supplement or override
2.48 + * the information retrieved from
2.49 + * <code>User.properties</code>.</p>
2.50 + *
2.51 + * <p>The implementation will look for tokens
2.52 + * <code>${licenseFirst}</code>,
2.53 + * <code>${licensePrefix}</code>, and
2.54 + * <code>${licenseLast}</code> to determine whether the licenseText has
2.55 + * already been interpolated or if it needs escaping.
2.56 *
2.57 * @param licenseText the license test with freemarker template tokens
2.58 - * @param additionalBindings additional binding values for freemarker interpolation
2.59 + * @param additionalBindings additional binding values for freemarker
2.60 + * interpolation
2.61 * @return the resolved licenseText
2.62 * @throws RuntimeException
2.63 */
2.64 public String resolveLicenseTemplate(String licenseText, Map<String, Object> additionalBindings) throws RuntimeException {
2.65 if (licenseText.contains("${") || (licenseText.contains("${licenseFirst}") && licenseText.contains("${licensePrefix}") && licenseText.contains("${licenseLast}"))) {
2.66 - System.out.println("License is a freemarker template!");
2.67 +// System.out.println("License is a freemarker template!");
2.68 //freemarker template
2.69 ScriptEngineManager sem = new ScriptEngineManager();
2.70 ScriptEngine se = sem.getEngineByName("freemarker");
2.71 @@ -129,7 +131,7 @@
2.72 throw new RuntimeException(ex);
2.73 } finally {
2.74 try {
2.75 - if(in!=null) {
2.76 + if (in != null) {
2.77 in.close();
2.78 }
2.79 } catch (IOException ex) {
2.80 @@ -147,11 +149,11 @@
2.81 for (Map.Entry<String, Object> e : additionalBindings.entrySet()) {
2.82 bindings.put(e.getKey(), e.getValue());
2.83 }
2.84 - String user = additionalBindings.containsKey(WizardProperties.KEY_COPYRIGHT_HOLDER) ? (String)additionalBindings.get(WizardProperties.KEY_COPYRIGHT_HOLDER) : props.getProperty("user", System.getProperty("user.name"));
2.85 - System.out.println("Using user: " + user);
2.86 + String user = additionalBindings.containsKey(WizardProperties.KEY_COPYRIGHT_HOLDER) ? (String) additionalBindings.get(WizardProperties.KEY_COPYRIGHT_HOLDER) : props.getProperty("user", System.getProperty("user.name"));
2.87 +// System.out.println("Using user: " + user);
2.88 if (props.containsKey("project.organization")) {
2.89 Project project = new Project(props.getProperty("project.organization"));
2.90 - System.out.println("Using project.organization: " + props.getProperty("project.organization"));
2.91 +// System.out.println("Using project.organization: " + props.getProperty("project.organization"));
2.92 bindings.put("project", project);
2.93 bindings.put("user", user);
2.94 } else {
2.95 @@ -173,11 +175,11 @@
2.96 throw new RuntimeException("Could not find script engine 'freemarker'!");
2.97 }
2.98 } else if (licenseText.contains(licenseFirst()) && licenseText.contains(licensePrefix()) && licenseText.contains(licenseLast())) {
2.99 - System.out.println("License is already escaped!");
2.100 +// System.out.println("License is already escaped!");
2.101 //probably already escaped
2.102 return licenseText;
2.103 } else {
2.104 - System.out.println("License is plain!");
2.105 +// System.out.println("License is plain!");
2.106 //unescaped
2.107 return escape(licenseText);
2.108 }
2.109 @@ -195,7 +197,7 @@
2.110
2.111 /**
2.112 * Freemarker expects project.organization to be the field 'organization' in
2.113 - * an object. This provides a thin wrapper for that. Class must be public to
2.114 + * an object. This provides a thin wrapper for that. Class must be public to
2.115 * be accessible by freemarker.
2.116 */
2.117 public class Project {
2.118 @@ -205,11 +207,10 @@
2.119 public Project(String organization) {
2.120 this.organization = organization;
2.121 }
2.122 -
2.123 +
2.124 public String getOrganization() {
2.125 return this.organization;
2.126 }
2.127 -
2.128 }
2.129 static Pattern p = Pattern.compile("(.*?)\\n|\\z", Pattern.UNIX_LINES);
2.130
3.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/api/LicenseHeader.java Sun Dec 30 21:11:51 2012 +0100
3.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/api/LicenseHeader.java Wed Jan 02 13:38:30 2013 +0100
3.3 @@ -36,7 +36,6 @@
3.4 *
3.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
3.6 */
3.7 -
3.8 package org.netbeans.modules.licensechanger.api;
3.9
3.10 import java.io.*;
3.11 @@ -51,31 +50,36 @@
3.12 import org.openide.util.Exceptions;
3.13
3.14 /**
3.15 - * License header resource/file abstraction class with static
3.16 - * methods to load a license header from file or registered license template.
3.17 + * License header resource/file abstraction class with static methods to load a
3.18 + * license header from file or registered license template.
3.19 + *
3.20 * @author Nils Hoffmann
3.21 */
3.22 public final class LicenseHeader {
3.23 -
3.24 +
3.25 /**
3.26 - * <p>Creates a <code>LicenseHeader</code> from a given <code>FileObject</code>.</p>
3.27 - *
3.28 - * <p>If the passed in <code>licenseName</code> is <em>null</em>, the name is inferred
3.29 - * from the <code>FileObject</code>'s name. According to NetBeans conventions, license
3.30 - * file names start with a prefixed <em>license-</em> before the actual license abbreviation,
3.31 - * e.g. <em>epl10</em> for the Eclipse public license version 1.0.</p>
3.32 - *
3.33 + * <p>Creates a
3.34 + * <code>LicenseHeader</code> from a given
3.35 + * <code>FileObject</code>.</p>
3.36 + *
3.37 + * <p>If the passed in
3.38 + * <code>licenseName</code> is <em>null</em>, the name is inferred from the
3.39 + * <code>FileObject</code>'s name. According to NetBeans conventions,
3.40 + * license file names start with a prefixed <em>license-</em> before the
3.41 + * actual license abbreviation, e.g. <em>epl10</em> for the Eclipse public
3.42 + * license version 1.0.</p>
3.43 + *
3.44 * @param file
3.45 * @param licenseName
3.46 * @param netBeansTemplate
3.47 - * @return
3.48 + * @return
3.49 */
3.50 public static LicenseHeader fromFileObject(FileObject file, String licenseName, boolean isNetBeansTemplate) {
3.51 String name;
3.52 - if(licenseName==null) {
3.53 + if (licenseName == null) {
3.54 name = file.getName();
3.55 name = name.substring("license-".length());
3.56 - }else{
3.57 + } else {
3.58 name = licenseName;
3.59 }
3.60 String content;
3.61 @@ -92,7 +96,7 @@
3.62 return null;
3.63 } finally {
3.64 try {
3.65 - if(in!=null) {
3.66 + if (in != null) {
3.67 in.close();
3.68 }
3.69 } catch (IOException ex) {
3.70 @@ -100,46 +104,46 @@
3.71 }
3.72 }
3.73 }
3.74 -
3.75 +
3.76 public static LicenseHeader fromFileObject(FileObject file, String licenseName) {
3.77 return fromFileObject(file, licenseName, false);
3.78 }
3.79 -
3.80 +
3.81 public static LicenseHeader fromFile(File file) {
3.82 - return fromFileObject(FileUtil.toFileObject(file),null);
3.83 + return fromFileObject(FileUtil.toFileObject(file), null);
3.84 }
3.85 -
3.86 +
3.87 public static Collection<? extends LicenseHeader> fromTemplates() {
3.88 FileObject licenseTemplates = FileUtil.getConfigFile("Templates/Licenses");
3.89 List<LicenseHeader> templateLicenses = new LinkedList<LicenseHeader>();
3.90 - for(FileObject license:licenseTemplates.getChildren()) {
3.91 + for (FileObject license : licenseTemplates.getChildren()) {
3.92 String name = license.getName();
3.93 name = name.substring("license-".length());
3.94 - LicenseHeader licenseHeader = LicenseHeader.fromFileObject(license,name,true);
3.95 - if(licenseHeader.getLicenseHeader() == null || licenseHeader.getLicenseHeader().isEmpty()) {
3.96 - System.err.println("License file "+name+" seems to be empty! Skipping...");
3.97 - }else{
3.98 + LicenseHeader licenseHeader = LicenseHeader.fromFileObject(license, name, true);
3.99 + if (licenseHeader.getLicenseHeader() == null || licenseHeader.getLicenseHeader().isEmpty()) {
3.100 + System.err.println("License file " + name + " seems to be empty! Skipping...");
3.101 + } else {
3.102 licenseHeader.setNetBeansTemplate(true);
3.103 templateLicenses.add(licenseHeader);
3.104 }
3.105 }
3.106 return templateLicenses;
3.107 }
3.108 -
3.109 +
3.110 public static void addAsNetBeansTemplate(LicenseHeader header) {
3.111 - String filename = "license-"+header.getName()+".txt";
3.112 + String filename = "license-" + header.getName() + ".txt";
3.113 FileObject licenseTemplates = FileUtil.getConfigFile("Templates/Licenses");
3.114 BufferedWriter bos = null;
3.115 try {
3.116 FileObject templateFile = licenseTemplates.createData(filename);
3.117 - bos = new BufferedWriter(new OutputStreamWriter(templateFile.getOutputStream(),Charset.forName("UTF-8")));
3.118 + bos = new BufferedWriter(new OutputStreamWriter(templateFile.getOutputStream(), Charset.forName("UTF-8")));
3.119 bos.write(header.getLicenseHeader());
3.120 header.setNetBeansTemplate(true);
3.121 } catch (IOException ex) {
3.122 Exceptions.printStackTrace(ex);
3.123 } finally {
3.124 try {
3.125 - if(bos!=null) {
3.126 + if (bos != null) {
3.127 bos.close();
3.128 }
3.129 } catch (IOException ex) {
3.130 @@ -147,7 +151,6 @@
3.131 }
3.132 }
3.133 }
3.134 -
3.135 private final String name;
3.136 private final String licenseHeader;
3.137 private final FileObject fo;
3.138 @@ -159,11 +162,11 @@
3.139 this.fo = fo;
3.140 this.netBeansTemplate = netBeansTemplate;
3.141 }
3.142 -
3.143 +
3.144 public String getName() {
3.145 return name;
3.146 }
3.147 -
3.148 +
3.149 public String getLicenseHeader() {
3.150 return licenseHeader;
3.151 }
3.152 @@ -189,5 +192,4 @@
3.153 }
3.154 return name;
3.155 }
3.156 -
3.157 }
4.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/api/RegexpFileHandler.java Sun Dec 30 21:11:51 2012 +0100
4.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/api/RegexpFileHandler.java Wed Jan 02 13:38:30 2013 +0100
4.3 @@ -36,7 +36,6 @@
4.4 *
4.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
4.6 */
4.7 -
4.8 package org.netbeans.modules.licensechanger.api;
4.9
4.10 import java.util.regex.Matcher;
4.11 @@ -48,8 +47,10 @@
4.12 * @author Tim Boudreau
4.13 */
4.14 public abstract class RegexpFileHandler extends FileHandler {
4.15 +
4.16 private final Pattern pattern;
4.17 - public RegexpFileHandler (Pattern pattern) {
4.18 +
4.19 + public RegexpFileHandler(Pattern pattern) {
4.20 this.pattern = pattern;
4.21 }
4.22
4.23 @@ -61,13 +62,12 @@
4.24 int end = m.end(1);
4.25 return new Offsets(start, end);
4.26 } else {
4.27 - throw new IllegalStateException ("Regexp " + pattern.pattern()
4.28 + throw new IllegalStateException("Regexp " + pattern.pattern()
4.29 + " gets groupCount " + m.groupCount());
4.30 }
4.31 } else {
4.32 - throw new IllegalStateException ("Regexp " + pattern.pattern() +
4.33 - " could find match in " + seq);
4.34 + throw new IllegalStateException("Regexp " + pattern.pattern()
4.35 + + " could find match in " + seq);
4.36 }
4.37 }
4.38 -
4.39 }
5.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/GroovyFileHandler.java Sun Dec 30 21:11:51 2012 +0100
5.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/GroovyFileHandler.java Wed Jan 02 13:38:30 2013 +0100
5.3 @@ -46,11 +46,12 @@
5.4
5.5 /**
5.6 * Service Provider implementation for files with mime-type text/x-groovy.
5.7 - *
5.8 + *
5.9 * @author Nils Hoffmann
5.10 */
5.11 -@org.openide.util.lookup.ServiceProvider(service=org.netbeans.modules.licensechanger.api.FileHandler.class)
5.12 +@org.openide.util.lookup.ServiceProvider(service = org.netbeans.modules.licensechanger.api.FileHandler.class)
5.13 public class GroovyFileHandler extends JavaFileHandler {
5.14 +
5.15 @Override
5.16 public String getDisplayName() {
5.17 return NbBundle.getMessage(GroovyFileHandler.class, "NAME_GROOVY_FILES"); //NOI18N
6.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/JavaFileHandler.java Sun Dec 30 21:11:51 2012 +0100
6.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/JavaFileHandler.java Wed Jan 02 13:38:30 2013 +0100
6.3 @@ -47,7 +47,7 @@
6.4 *
6.5 * @author Tim Boudreau
6.6 */
6.7 -@org.openide.util.lookup.ServiceProvider(service=org.netbeans.modules.licensechanger.api.FileHandler.class)
6.8 +@org.openide.util.lookup.ServiceProvider(service = org.netbeans.modules.licensechanger.api.FileHandler.class)
6.9 public class JavaFileHandler extends FileHandler {
6.10
6.11 @Override
6.12 @@ -69,13 +69,13 @@
6.13 protected Offsets getReplaceOffsets(CharSequence seq) {
6.14 String[] lines = splitIntoLines(seq);
6.15 LineVisitor v = new LineVisitor();
6.16 - for (int i=0; i < lines.length; i++) {
6.17 + for (int i = 0; i < lines.length; i++) {
6.18 String line = lines[i];
6.19 if (!v.visitLine(line)) {
6.20 break;
6.21 }
6.22 }
6.23 - return new Offsets (0, v.delCount);
6.24 + return new Offsets(0, v.delCount);
6.25 }
6.26
6.27 @Override
6.28 @@ -94,18 +94,20 @@
6.29 }
6.30
6.31 private static final class LineVisitor {
6.32 +
6.33 private boolean inComment;
6.34 int delCount;
6.35 - public boolean visitLine (String line) {
6.36 +
6.37 + public boolean visitLine(String line) {
6.38 String trimmed = line.trim();
6.39 if (trimmed.startsWith("//") || trimmed.startsWith("/*") && trimmed.endsWith("*/")) {
6.40 return visitCommentLine(line);
6.41 } else if (trimmed.length() == 0) {
6.42 - return visitEmptyLine (line);
6.43 + return visitEmptyLine(line);
6.44 } else if (inComment) {
6.45 - return visitLineInComment (line);
6.46 + return visitLineInComment(line);
6.47 } else {
6.48 - return visitLineAndTestForComment (line);
6.49 + return visitLineAndTestForComment(line);
6.50 }
6.51 }
6.52
6.53 @@ -145,7 +147,6 @@
6.54 }
6.55 }
6.56
6.57 -
6.58 // @Override
6.59 // protected Offsets getReplaceOffsets(CharSequence seq) {
6.60 // int end2 = 0;
6.61 @@ -191,20 +192,19 @@
6.62 // }
6.63 // return new Offsets(0, end2);
6.64 // }
6.65 -
6.66 @Override
6.67 protected String escape(String licenseText) {
6.68 StringBuilder sb = new StringBuilder(licenseText.length() + 30);
6.69 - String[] lines = splitIntoLines (licenseText);
6.70 - sb.append ("/*\n");
6.71 + String[] lines = splitIntoLines(licenseText);
6.72 + sb.append("/*\n");
6.73 for (int i = 0; i < lines.length; i++) {
6.74 String line = lines[i];
6.75 boolean empty = line.trim().length() == 0;
6.76 if (empty) {
6.77 - sb.append (" *");
6.78 + sb.append(" *");
6.79 } else {
6.80 - sb.append (" * ");
6.81 - sb.append (line);
6.82 + sb.append(" * ");
6.83 + sb.append(line);
6.84 }
6.85 sb.append("\n");
6.86 }
7.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/JavaFxFileHandler.java Sun Dec 30 21:11:51 2012 +0100
7.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/JavaFxFileHandler.java Wed Jan 02 13:38:30 2013 +0100
7.3 @@ -36,14 +36,14 @@
7.4 *
7.5 * Portions Copyrighted 2010 Sun Microsystems, Inc.
7.6 */
7.7 -
7.8 package org.netbeans.modules.licensechanger.spi.handlers;
7.9
7.10 import org.openide.filesystems.FileObject;
7.11 import org.openide.util.NbBundle;
7.12
7.13 -@org.openide.util.lookup.ServiceProvider(service=org.netbeans.modules.licensechanger.api.FileHandler.class)
7.14 +@org.openide.util.lookup.ServiceProvider(service = org.netbeans.modules.licensechanger.api.FileHandler.class)
7.15 public class JavaFxFileHandler extends JavaFileHandler {
7.16 +
7.17 @Override
7.18 public String getDisplayName() {
7.19 return NbBundle.getMessage(JavaFxFileHandler.class, "NAME_JAVAFX_FILES"); //NOI18N
7.20 @@ -54,4 +54,3 @@
7.21 return "text/x-fx".equals(file.getMIMEType()); //NOI18N
7.22 }
7.23 }
7.24 -
8.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/PropertiesFileHandler.java Sun Dec 30 21:11:51 2012 +0100
8.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/PropertiesFileHandler.java Wed Jan 02 13:38:30 2013 +0100
8.3 @@ -36,7 +36,6 @@
8.4 *
8.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
8.6 */
8.7 -
8.8 package org.netbeans.modules.licensechanger.spi.handlers;
8.9
8.10 import org.netbeans.modules.licensechanger.api.FileHandler;
8.11 @@ -49,17 +48,17 @@
8.12 *
8.13 * @author Tim Boudreau
8.14 */
8.15 -@org.openide.util.lookup.ServiceProvider(service=org.netbeans.modules.licensechanger.api.FileHandler.class)
8.16 +@org.openide.util.lookup.ServiceProvider(service = org.netbeans.modules.licensechanger.api.FileHandler.class)
8.17 public class PropertiesFileHandler extends FileHandler {
8.18
8.19 @Override
8.20 public String getDisplayName() {
8.21 - return NbBundle.getMessage (JavaFileHandler.class, "NAME_PROPERTIES_FILES"); //NOI18N
8.22 + return NbBundle.getMessage(JavaFileHandler.class, "NAME_PROPERTIES_FILES"); //NOI18N
8.23 }
8.24
8.25 @Override
8.26 public boolean match(FileObject file) {
8.27 - return "properties".equals (file.getExt());
8.28 + return "properties".equals(file.getExt());
8.29 }
8.30
8.31 @Override
8.32 @@ -67,8 +66,8 @@
8.33 String n = file.getNameExt();
8.34 return "project.properties".equals(n) || "private.properties".equals(n) || //NOI18N
8.35 "platform-private.properties".equals(n) || "genfiles.properties".equals(n)
8.36 - || "config.properties".equals(n) || "nblibraries-private.properties".equals(n) ||
8.37 - "nblibraries.properties".equals(n); //NOI18N
8.38 + || "config.properties".equals(n) || "nblibraries-private.properties".equals(n)
8.39 + || "nblibraries.properties".equals(n); //NOI18N
8.40 }
8.41
8.42 @Override
8.43 @@ -85,7 +84,7 @@
8.44 break;
8.45 }
8.46 }
8.47 - return new Offsets (0, end);
8.48 + return new Offsets(0, end);
8.49 }
8.50
8.51 @Override
8.52 @@ -95,12 +94,12 @@
8.53 for (int i = 0; i < lines.length; i++) {
8.54 String line = lines[i];
8.55 if (line.trim().length() == 0) {
8.56 - sb.append ("#");
8.57 + sb.append("#");
8.58 } else {
8.59 - sb.append ("# ");
8.60 - sb.append (line);
8.61 + sb.append("# ");
8.62 + sb.append(line);
8.63 }
8.64 - sb.append ("\n");
8.65 + sb.append("\n");
8.66 }
8.67 return sb.toString();
8.68 }
9.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/XmlFileHandler.java Sun Dec 30 21:11:51 2012 +0100
9.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/XmlFileHandler.java Wed Jan 02 13:38:30 2013 +0100
9.3 @@ -36,7 +36,6 @@
9.4 *
9.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
9.6 */
9.7 -
9.8 package org.netbeans.modules.licensechanger.spi.handlers;
9.9
9.10 import java.io.CharConversionException;
9.11 @@ -55,23 +54,23 @@
9.12 *
9.13 * @author Tim Boudreau
9.14 */
9.15 -@org.openide.util.lookup.ServiceProvider(service=org.netbeans.modules.licensechanger.api.FileHandler.class)
9.16 -public class XmlFileHandler extends FileHandler{// implements Customizable {
9.17 +@org.openide.util.lookup.ServiceProvider(service = org.netbeans.modules.licensechanger.api.FileHandler.class)
9.18 +public class XmlFileHandler extends FileHandler {// implements Customizable {
9.19
9.20 @Override
9.21 public boolean match(FileObject file) {
9.22 String ext = file.getExt();
9.23 String mime = file.getMIMEType();
9.24 - return "xml".equals (file.getExt()) || "text/xml".equals(mime) ||
9.25 - "application/xml".equals(mime) || mime.endsWith("+xml");
9.26 + return "xml".equals(file.getExt()) || "text/xml".equals(mime)
9.27 + || "application/xml".equals(mime) || mime.endsWith("+xml");
9.28 }
9.29
9.30 @Override
9.31 public boolean shouldSkipFile(FileObject file) {
9.32 String n = file.getNameExt();
9.33 - return "project.xml".equals(n) ||
9.34 - "private.xml".equals(n) || "build.xml".equals(n) ||
9.35 - "build-impl.xml".equals(n) || "pom.xml".equals(n);
9.36 + return "project.xml".equals(n)
9.37 + || "private.xml".equals(n) || "build.xml".equals(n)
9.38 + || "build-impl.xml".equals(n) || "pom.xml".equals(n);
9.39 }
9.40
9.41 @Override
9.42 @@ -83,13 +82,13 @@
9.43 protected Offsets getReplaceOffsets(CharSequence seq) {
9.44 String[] lines = splitIntoLines(seq);
9.45 LineVisitor v = new LineVisitor();
9.46 - for (int i=0; i < lines.length; i++) {
9.47 + for (int i = 0; i < lines.length; i++) {
9.48 String line = lines[i];
9.49 if (!v.visitLine(line)) {
9.50 break;
9.51 }
9.52 }
9.53 - return new Offsets (v.start, v.delCount);
9.54 + return new Offsets(v.start, v.delCount);
9.55 }
9.56
9.57 @Override
9.58 @@ -101,19 +100,17 @@
9.59 }
9.60 return "<!--\n" + licenseText + "\n-->\n";
9.61 }
9.62 -
9.63 - static Pattern xmlDeclaration = Pattern.compile ("(<\\?xml.*?\\?>)");
9.64 + static Pattern xmlDeclaration = Pattern.compile("(<\\?xml.*?\\?>)");
9.65
9.66 // @Override
9.67 // public Component getCustomizer() {
9.68 // return new XmlHandlerCustomizer();
9.69 // }
9.70 -
9.71 public static boolean isInsertAtTopOfFile() {
9.72 return NbPreferences.forModule(XmlFileHandler.class).getBoolean("atTop", false);
9.73 }
9.74
9.75 - public static void setInsertAtTopOfFile (boolean val) {
9.76 + public static void setInsertAtTopOfFile(boolean val) {
9.77 NbPreferences.forModule(XmlFileHandler.class).putBoolean("atTop", val);
9.78 }
9.79
9.80 @@ -133,11 +130,13 @@
9.81 }
9.82
9.83 private static final class XmlDeclarationLocator {
9.84 +
9.85 int declarationStartIndex;
9.86 int declarationEndIndex;
9.87 boolean isMidLine;
9.88 +
9.89 public boolean visitLine(String line) {
9.90 - Matcher m = xmlDeclaration.matcher (line);
9.91 + Matcher m = xmlDeclaration.matcher(line);
9.92 if (m.find()) {
9.93 declarationStartIndex += m.start(1);
9.94 declarationEndIndex = declarationStartIndex + m.end(1);
9.95 @@ -155,28 +154,28 @@
9.96 }
9.97
9.98 @Override
9.99 - public String transform(String origText, String licenseText, Map<String,Object> bindings) {
9.100 + public String transform(String origText, String licenseText, Map<String, Object> bindings) {
9.101 String[] lines = splitIntoLines(origText);
9.102 XmlDeclarationLocator v = new XmlDeclarationLocator();
9.103 - for (int i=0; i < lines.length; i++) {
9.104 + for (int i = 0; i < lines.length; i++) {
9.105 if (!v.visitLine(lines[i])) {
9.106 break;
9.107 }
9.108 }
9.109 if (v.foundDeclaration()) {
9.110 - StringBuilder sb = new StringBuilder (origText);
9.111 + StringBuilder sb = new StringBuilder(origText);
9.112 sb.delete(0, v.declarationStartIndex);
9.113 origText = sb.toString();
9.114 }
9.115 // String license = escape (licenseText);
9.116 String license = resolveLicenseTemplate(licenseText, bindings);
9.117 license = "\n" + license;
9.118 - StringBuilder sb = new StringBuilder (origText);
9.119 + StringBuilder sb = new StringBuilder(origText);
9.120 Offsets o = getReplaceOffsets(sb);
9.121 sb.delete(o.getStart(), o.getEnd());
9.122 lines = splitIntoLines(origText);
9.123 v = new XmlDeclarationLocator();
9.124 - for (int i=0; i < lines.length; i++) {
9.125 + for (int i = 0; i < lines.length; i++) {
9.126 if (!v.visitLine(lines[i])) {
9.127 break;
9.128 }
9.129 @@ -189,13 +188,13 @@
9.130 return sb.toString();
9.131 }
9.132
9.133 + private static final class LineVisitor {
9.134
9.135 -
9.136 - private static final class LineVisitor {
9.137 private boolean inComment;
9.138 int delCount;
9.139 int start;
9.140 - public boolean visitLine (String line) {
9.141 +
9.142 + public boolean visitLine(String line) {
9.143 if (start == 0) {
9.144 if (line.trim().startsWith("<?xml ")) {
9.145 start += line.length() + 1;
9.146 @@ -207,11 +206,11 @@
9.147 if (trimmed.startsWith("<!--") && trimmed.endsWith("-->")) {
9.148 return visitCommentLine(line);
9.149 } else if (trimmed.length() == 0) {
9.150 - return visitEmptyLine (line);
9.151 + return visitEmptyLine(line);
9.152 } else if (inComment) {
9.153 - return visitLineInComment (line);
9.154 + return visitLineInComment(line);
9.155 } else {
9.156 - return visitLineAndTestForComment (line);
9.157 + return visitLineAndTestForComment(line);
9.158 }
9.159 }
9.160
10.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/XmlHandlerCustomizer.java Sun Dec 30 21:11:51 2012 +0100
10.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/handlers/XmlHandlerCustomizer.java Wed Jan 02 13:38:30 2013 +0100
10.3 @@ -43,19 +43,23 @@
10.4 * @author Tim Boudreau
10.5 */
10.6 public class XmlHandlerCustomizer extends javax.swing.JPanel {
10.7 +
10.8 boolean init;
10.9 - /** Creates new form XmlHandlerCustomizer */
10.10 +
10.11 + /**
10.12 + * Creates new form XmlHandlerCustomizer
10.13 + */
10.14 public XmlHandlerCustomizer() {
10.15 initComponents();
10.16 - afterButton.setSelected (!XmlFileHandler.isInsertAtTopOfFile());
10.17 + afterButton.setSelected(!XmlFileHandler.isInsertAtTopOfFile());
10.18 beforeButton.setSelected(!afterButton.isSelected());
10.19 init = true;
10.20 }
10.21
10.22 - /** This method is called from within the constructor to
10.23 - * initialize the form.
10.24 - * WARNING: Do NOT modify this code. The content of this method is
10.25 - * always regenerated by the Form Editor.
10.26 + /**
10.27 + * This method is called from within the constructor to initialize the form.
10.28 + * WARNING: Do NOT modify this code. The content of this method is always
10.29 + * regenerated by the Form Editor.
10.30 */
10.31 @SuppressWarnings("unchecked")
10.32 // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
10.33 @@ -105,15 +109,14 @@
10.34 }// </editor-fold>//GEN-END:initComponents
10.35
10.36 private void licensePreferenceChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_licensePreferenceChanged
10.37 - if (!init) return;
10.38 + if (!init) {
10.39 + return;
10.40 + }
10.41 XmlFileHandler.setInsertAtTopOfFile(beforeButton.isSelected());
10.42 }//GEN-LAST:event_licensePreferenceChanged
10.43 -
10.44 -
10.45 // Variables declaration - do not modify//GEN-BEGIN:variables
10.46 private javax.swing.JRadioButton afterButton;
10.47 private javax.swing.JRadioButton beforeButton;
10.48 private javax.swing.ButtonGroup buttonGroup1;
10.49 // End of variables declaration//GEN-END:variables
10.50 -
10.51 }
11.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/Bundle.properties Sun Dec 30 21:11:51 2012 +0100
11.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/Bundle.properties Wed Jan 02 13:38:30 2013 +0100
11.3 @@ -3,11 +3,11 @@
11.4 ERR_COULD_NOT_LOAD=Could not load {0}
11.5
11.6 WIZARD_TITLE=Add/Replace License Headers
11.7 -chooseFileTypes=Select File Types
11.8 -chooseLicense=Select License
11.9 -chooseFolders=Prune Folders
11.10 -chooseFiles=Choose Files
11.11 -preview=Preview
11.12 +#chooseFileTypes=Select File Types
11.13 +#chooseLicense=Select License
11.14 +#chooseFolders=Prune Folders
11.15 +#chooseFiles=Choose Files
11.16 +#preview=Preview
11.17 LBL_CHANGE_LICENSE=Change License Headers
11.18
11.19 LicenseChooserPanel.chooseLabel.text=Choose License
11.20 @@ -19,8 +19,10 @@
11.21 ChooseFileTypesPanel.copyrightHolderLabel.text=Copyright Holder
11.22 ChooseFileTypesPanel.licensePropertiesPanel.border.title=License Properties
11.23 ChooseFileTypesPanel.storeInUserProperties.text=Store in User.properties
11.24 +ChooseFileTypesPanel.nodesLabel.text=File Types
11.25
11.26 SelectFoldersPanel.jLabel1.text=Uncheck Folders that Should Be Ignored
11.27 +SelectFoldersPanel.nodesLabel.text=Folders
11.28
11.29 LineEndingsPanel.border.title=Line Endings
11.30 LineEndingsPanel.noChangeButton.text=Do Not Change
11.31 @@ -34,3 +36,4 @@
11.32
11.33 PreviewPanel.jLabel1.text=Select File for Preview
11.34 PreviewPanel.jLabel3.text=jLabel3
11.35 +PreviewPanel.nodesLabel.text=Files
12.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/ChooseFileTypesPanel.java Sun Dec 30 21:11:51 2012 +0100
12.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/ChooseFileTypesPanel.java Wed Jan 02 13:38:30 2013 +0100
12.3 @@ -42,11 +42,12 @@
12.4 *
12.5 * Created on Mar 20, 2009, 1:14:43 AM
12.6 */
12.7 -
12.8 package org.netbeans.modules.licensechanger.spi.wizard;
12.9
12.10 import java.beans.PropertyChangeEvent;
12.11 import java.beans.PropertyChangeListener;
12.12 +import java.util.Collections;
12.13 +import java.util.Comparator;
12.14 import java.util.HashSet;
12.15 import java.util.List;
12.16 import java.util.Set;
12.17 @@ -54,6 +55,7 @@
12.18 import org.netbeans.modules.licensechanger.api.FileHandler;
12.19 import org.netbeans.modules.licensechanger.spi.wizard.utils.CheckableNodeCapability;
12.20 import org.netbeans.modules.licensechanger.spi.wizard.utils.WizardProperties;
12.21 +import org.netbeans.swing.outline.DefaultOutlineModel;
12.22 import org.openide.explorer.ExplorerManager;
12.23 import org.openide.explorer.view.CheckableNode;
12.24 import org.openide.explorer.view.OutlineView;
12.25 @@ -64,34 +66,26 @@
12.26 import org.openide.util.Lookup;
12.27 import org.openide.util.NbPreferences;
12.28 import org.openide.util.lookup.Lookups;
12.29 -import static org.netbeans.modules.licensechanger.spi.wizard.Bundle.*;
12.30 -import org.openide.util.NbBundle;
12.31 -import org.openide.util.NbBundle.Messages;
12.32
12.33 /**
12.34 *
12.35 * @author Tim Boudreau
12.36 * @author Nils Hoffmann (Refactoring)
12.37 */
12.38 -@Messages("ChooseFileTypesPanel.jScrollPane1.nodeHeaderLabel=File Type")
12.39 public class ChooseFileTypesPanel extends javax.swing.JPanel implements ExplorerManager.Provider, PropertyChangeListener {
12.40 +
12.41 private final ExplorerManager mgr = new ExplorerManager();
12.42
12.43 public ChooseFileTypesPanel() {
12.44 initComponents();
12.45 - String copyrightHolder =
12.46 + String copyrightHolder =
12.47 NbPreferences.forModule(ChooseFileTypesWizardPanel.class)
12.48 .get(WizardProperties.KEY_COPYRIGHT_HOLDER, null);
12.49 if (copyrightHolder != null && !copyrightHolder.trim().isEmpty()) {
12.50 copyrightHolderField.setText(copyrightHolder);
12.51 }
12.52 - mgr.setRootContext(new AbstractNode (Children.create(new FileHandlerChildren(), false)));
12.53 -// ((CheckboxListView) jScrollPane1).setNodeCheckObserver(this);
12.54 -// ((CheckboxListView) jScrollPane1).setListEnabled(true);
12.55 -// ((CheckboxListView) jScrollPane1).setCheckboxesEnabled(true);
12.56 -// ((CheckboxListView) jScrollPane1).setCheckboxesVisible(true);
12.57 + mgr.setRootContext(new AbstractNode(Children.create(new FileHandlerChildren(), false)));
12.58 mgr.addPropertyChangeListener(this);
12.59 - setName("Choose File Types");
12.60 updateMap();
12.61 updateView();
12.62 }
12.63 @@ -101,10 +95,10 @@
12.64 firePropertyChange(WizardProperties.KEY_FILE_HANDLERS, null, handlers);
12.65 }
12.66
12.67 - /** This method is called from within the constructor to
12.68 - * initialize the form.
12.69 - * WARNING: Do NOT modify this code. The content of this method is
12.70 - * always regenerated by the Form Editor.
12.71 + /**
12.72 + * This method is called from within the constructor to initialize the form.
12.73 + * WARNING: Do NOT modify this code. The content of this method is always
12.74 + * regenerated by the Form Editor.
12.75 */
12.76 @SuppressWarnings("unchecked")
12.77 // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
12.78 @@ -207,8 +201,6 @@
12.79 private void copyrightHolderFieldFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_copyrightHolderFieldFocusGained
12.80 copyrightHolderField.selectAll();
12.81 }//GEN-LAST:event_copyrightHolderFieldFocusGained
12.82 -
12.83 -
12.84 // Variables declaration - do not modify//GEN-BEGIN:variables
12.85 private javax.swing.JTextField copyrightHolderField;
12.86 private javax.swing.JLabel copyrightHolderLabel;
12.87 @@ -219,18 +211,18 @@
12.88 private javax.swing.JLabel noCustomizerLabel;
12.89 private javax.swing.JCheckBox storeInUserProperties;
12.90 // End of variables declaration//GEN-END:variables
12.91 -
12.92 +
12.93 @Override
12.94 public ExplorerManager getExplorerManager() {
12.95 return mgr;
12.96 }
12.97
12.98 public Set<FileHandler> getFileHandlers() {
12.99 - Set <FileHandler> result = new HashSet<FileHandler>();
12.100 + Set<FileHandler> result = new HashSet<FileHandler>();
12.101 for (Node n : mgr.getRootContext().getChildren().getNodes(true)) {
12.102 CheckableNode cn = n.getLookup().lookup(CheckableNode.class);
12.103 - if (cn!= null && cn.isSelected()) {
12.104 - result.addAll (n.getLookup().lookupAll(FileHandler.class));
12.105 + if (cn != null && cn.isSelected()) {
12.106 + result.addAll(n.getLookup().lookupAll(FileHandler.class));
12.107 }
12.108 }
12.109 return result;
12.110 @@ -240,14 +232,14 @@
12.111 public void propertyChange(PropertyChangeEvent evt) {
12.112 if (ExplorerManager.PROP_SELECTED_NODES.equals(evt.getPropertyName())) {
12.113 Node[] n = mgr.getSelectedNodes();
12.114 - updateCustomizer (n.length == 1 ? n[0].getLookup().lookup(Customizable.class) : null);
12.115 + updateCustomizer(n.length == 1 ? n[0].getLookup().lookup(Customizable.class) : null);
12.116 }
12.117 }
12.118 -
12.119 +
12.120 public String getCopyrightHolder() {
12.121 return copyrightHolderField.getText();
12.122 }
12.123 -
12.124 +
12.125 public void setCopyrightHolder(String copyrightHolder) {
12.126 copyrightHolderField.setText(copyrightHolder);
12.127 }
12.128 @@ -255,31 +247,39 @@
12.129 public boolean isStoreInUserProperties() {
12.130 return storeInUserProperties.isSelected();
12.131 }
12.132 -
12.133 +
12.134 public void setStoreInUserProperties(boolean b) {
12.135 storeInUserProperties.setSelected(b);
12.136 }
12.137
12.138 private void updateView() {
12.139 - OutlineView ov = (OutlineView)jScrollPane1;
12.140 + OutlineView ov = (OutlineView) jScrollPane1;
12.141 ov.getOutline().setRootVisible(false);
12.142 ov.setPopupAllowed(false);
12.143 ov.setTreeSortable(false);
12.144 ov.getOutline().setShowGrid(false);
12.145 - String headerName = ChooseFileTypesPanel_jScrollPane1_nodeHeaderLabel(); // NOI18N
12.146 - ov.getOutline().getTableHeader().getColumnModel().getColumn(0).setHeaderValue(headerName);
12.147 + String headerName = org.openide.util.NbBundle.getMessage(ChooseFileTypesPanel.class, "SelectFoldersPanel.nodesLabel.text"); // NOI18N
12.148 + ((DefaultOutlineModel) ov.getOutline().getOutlineModel()).setNodesColumnLabel(headerName);
12.149 + setName("Choose File Types");
12.150 }
12.151
12.152 private static final class FileHandlerChildren extends ChildFactory<FileHandler> {
12.153 +
12.154 @Override
12.155 protected boolean createKeys(List<FileHandler> toPopulate) {
12.156 - toPopulate.addAll (Lookup.getDefault().lookupAll(FileHandler.class));
12.157 + toPopulate.addAll(Lookup.getDefault().lookupAll(FileHandler.class));
12.158 + Collections.sort(toPopulate, new Comparator<FileHandler>() {
12.159 + @Override
12.160 + public int compare(FileHandler t, FileHandler t1) {
12.161 + return t.getDisplayName().compareTo(t1.getDisplayName());
12.162 + }
12.163 + });
12.164 return true;
12.165 }
12.166
12.167 @Override
12.168 protected Node createNodeForKey(FileHandler key) {
12.169 - AbstractNode result = new AbstractNode (Children.LEAF, Lookups.fixed(key,new CheckableNodeCapability()));
12.170 + AbstractNode result = new AbstractNode(Children.LEAF, Lookups.fixed(key, new CheckableNodeCapability()));
12.171 result.setDisplayName(key.getDisplayName());
12.172 return result;
12.173 }
12.174 @@ -287,10 +287,9 @@
12.175
12.176 private void updateCustomizer(Customizable c) {
12.177 customizerPanel.removeAll();
12.178 - customizerPanel.add (c == null ? noCustomizerLabel : c.getCustomizer());
12.179 + customizerPanel.add(c == null ? noCustomizerLabel : c.getCustomizer());
12.180 invalidate();
12.181 revalidate();
12.182 repaint();
12.183 }
12.184 -
12.185 }
13.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/LicenseChangerWizardAction.java Sun Dec 30 21:11:51 2012 +0100
13.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/LicenseChangerWizardAction.java Wed Jan 02 13:38:30 2013 +0100
13.3 @@ -36,7 +36,6 @@
13.4 *
13.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
13.6 */
13.7 -
13.8 package org.netbeans.modules.licensechanger.spi.wizard;
13.9
13.10 import java.awt.Component;
13.11 @@ -55,6 +54,7 @@
13.12 import org.openide.WizardDescriptor;
13.13 import org.openide.awt.ActionID;
13.14 import org.openide.awt.ActionReference;
13.15 +import org.openide.awt.ActionReferences;
13.16 import org.openide.awt.ActionRegistration;
13.17 import org.openide.filesystems.FileObject;
13.18 import org.openide.loaders.DataObject;
13.19 @@ -62,6 +62,7 @@
13.20
13.21 /**
13.22 * Context-sensitive action to launch the license header change wizard.
13.23 + *
13.24 * @author Nils Hoffmann
13.25 */
13.26 @ActionID(
13.27 @@ -69,16 +70,31 @@
13.28 id = "org.netbeans.modules.licensechanger.wizard.LicenseChangerWizardAction")
13.29 @ActionRegistration(
13.30 displayName = "#CTL_LicenseChangerWizardAction")
13.31 -@ActionReference(path = "Loaders/folder/any/Actions", position = 951)
13.32 +@ActionReferences(
13.33 +// @ActionReference(path = "Loaders/folder/any/Actions", position = 951)
13.34 +@ActionReference(path = "UI/ToolActions/Files", position = 951))
13.35 @NbBundle.Messages("CTL_LicenseChangerWizardAction=Change License Header")
13.36 public final class LicenseChangerWizardAction implements ActionListener {
13.37
13.38 private List<DataObject> context;
13.39 -
13.40 +
13.41 public LicenseChangerWizardAction(List<DataObject> context) {
13.42 this.context = context;
13.43 }
13.44 -
13.45 +
13.46 + /**
13.47 + * Used to return the parent folder of a file or the folder itself.
13.48 + *
13.49 + * @param fo
13.50 + * @return
13.51 + */
13.52 + private FileObject addFileObject(FileObject fo) {
13.53 + if (fo.isFolder()) {
13.54 + return fo;
13.55 + }
13.56 + return fo.getParent();
13.57 + }
13.58 +
13.59 @Override
13.60 public void actionPerformed(ActionEvent e) {
13.61 Set<FileObject> files = new HashSet<FileObject>();
13.62 @@ -86,20 +102,20 @@
13.63 for (DataObject ob : context) {
13.64 FileObject fo = ob.getPrimaryFile();
13.65 Project proj = FileOwnerQuery.getOwner(fo);
13.66 - if(owningProject == null) {
13.67 + if (owningProject == null) {
13.68 owningProject = proj;
13.69 //TODO implement better exclusion of build directories
13.70 - files.add (fo);
13.71 + files.add(addFileObject(fo));
13.72 } else {
13.73 - if(owningProject.equals(proj)) {
13.74 - files.add(fo);
13.75 + if (owningProject.equals(proj)) {
13.76 + files.add(addFileObject(fo));
13.77 } else {
13.78 Exceptions.printStackTrace(new IllegalStateException("Can only handle folders below one project!"));
13.79 return;
13.80 }
13.81 }
13.82 }
13.83 -
13.84 +
13.85 List<WizardDescriptor.Panel<WizardDescriptor>> panels = new ArrayList<WizardDescriptor.Panel<WizardDescriptor>>();
13.86 panels.add(new ChooseFileTypesWizardPanel());
13.87 panels.add(new LicenseChooserWizardPanel());
13.88 @@ -122,7 +138,7 @@
13.89 WizardDescriptor wiz = new WizardDescriptor(new WizardDescriptor.ArrayIterator<WizardDescriptor>(panels));
13.90 // {0} will be replaced by WizardDesriptor.Panel.getComponent().getName()
13.91 wiz.setTitleFormat(new MessageFormat("{0}"));
13.92 - wiz.setTitle("Change licenses");
13.93 + wiz.setTitle("Change License Headers");
13.94 wiz.putProperty(WizardProperties.KEY_ROOT_FILES, files);
13.95 wiz.putProperty(WizardProperties.KEY_PROJECT, owningProject);
13.96 if (DialogDisplayer.getDefault().notify(wiz) == WizardDescriptor.FINISH_OPTION) {
14.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/LicenseChooserPanel.java Sun Dec 30 21:11:51 2012 +0100
14.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/LicenseChooserPanel.java Wed Jan 02 13:38:30 2013 +0100
14.3 @@ -36,7 +36,6 @@
14.4 *
14.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
14.6 */
14.7 -
14.8 package org.netbeans.modules.licensechanger.spi.wizard;
14.9
14.10 import java.awt.Component;
14.11 @@ -165,9 +164,9 @@
14.12 DefaultComboBoxModel dcbm = (DefaultComboBoxModel) selectLicense.getModel();
14.13 LicenseHeader lh = LicenseHeader.fromFile(f);
14.14 LicenseHeader.addAsNetBeansTemplate(lh);
14.15 - for(LicenseHeader header:LicenseHeader.fromTemplates()) {
14.16 - if(header.getName().equals(lh.getName())) {
14.17 - System.out.println("Found newly added template!");
14.18 + for (LicenseHeader header : LicenseHeader.fromTemplates()) {
14.19 + if (header.getName().equals(lh.getName())) {
14.20 +// System.out.println("Found newly added template!");
14.21 dcbm.addElement(header);
14.22 dcbm.setSelectedItem(header);
14.23 loadLicenseFromResource(header);
14.24 @@ -203,7 +202,7 @@
14.25 private void initLicenses() throws IOException {
14.26 assert !EventQueue.isDispatchThread();
14.27 final DefaultComboBoxModel mdl = new DefaultComboBoxModel();
14.28 - for(LicenseHeader header:LicenseHeader.fromTemplates()) {
14.29 + for (LicenseHeader header : LicenseHeader.fromTemplates()) {
14.30 mdl.addElement(header);
14.31 }
14.32 EventQueue.invokeLater(new Runnable() {
14.33 @@ -236,26 +235,25 @@
14.34 public String getLicenseText() {
14.35 return licenseText.getText();
14.36 }
14.37 -
14.38 +
14.39 public String getLicenseName() {
14.40 Object obj = selectLicense.getSelectedItem();
14.41 - if(obj!= null && obj instanceof LicenseHeader) {
14.42 - LicenseHeader header = (LicenseHeader)obj;
14.43 + if (obj != null && obj instanceof LicenseHeader) {
14.44 + LicenseHeader header = (LicenseHeader) obj;
14.45 return header.getName();
14.46 }
14.47 return null;
14.48 }
14.49 -
14.50 +
14.51 public boolean isUpdateDefaultProjectLicense() {
14.52 return updateDefaultProjectLicense.isSelected();
14.53 }
14.54 -
14.55 +
14.56 public void setUpdateDefaultProjectLicense(boolean b) {
14.57 updateDefaultProjectLicense.setSelected(b);
14.58 }
14.59
14.60 private void updateLicense() {
14.61 - System.out.println("Update license called");
14.62 licenseText.setEditable(false);
14.63 String txt = licenseText.getText();
14.64 if (!txt.endsWith("\n")) {
14.65 @@ -286,7 +284,7 @@
14.66 ResourceLoader(LicenseHeader header) {
14.67 this.header = header;
14.68 }
14.69 -
14.70 +
14.71 @Override
14.72 public void run() {
14.73 licenseText.setText(header.getLicenseHeader());
15.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/LicenseChooserWizardPanel.java Sun Dec 30 21:11:51 2012 +0100
15.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/LicenseChooserWizardPanel.java Wed Jan 02 13:38:30 2013 +0100
15.3 @@ -36,7 +36,6 @@
15.4 *
15.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
15.6 */
15.7 -
15.8 package org.netbeans.modules.licensechanger.spi.wizard;
15.9
15.10 import java.beans.PropertyChangeEvent;
15.11 @@ -49,7 +48,7 @@
15.12 import org.openide.util.HelpCtx;
15.13
15.14 /**
15.15 - *
15.16 + *
15.17 * @author Nils Hoffmann
15.18 */
15.19 public class LicenseChooserWizardPanel implements WizardDescriptor.ValidatingPanel<WizardDescriptor>, PropertyChangeListener {
15.20 @@ -75,7 +74,7 @@
15.21 }
15.22 return component;
15.23 }
15.24 -
15.25 +
15.26 @Override
15.27 public HelpCtx getHelp() {
15.28 // Show no Help button for this panel:
15.29 @@ -83,34 +82,34 @@
15.30 // If you have context help:
15.31 // return new HelpCtx("help.key.here");
15.32 }
15.33 -
15.34 +
15.35 @Override
15.36 public boolean isValid() {
15.37 return valid;
15.38 }
15.39 -
15.40 +
15.41 @Override
15.42 public void addChangeListener(ChangeListener l) {
15.43 cs.addChangeListener(l);
15.44 }
15.45 -
15.46 +
15.47 @Override
15.48 public void removeChangeListener(ChangeListener l) {
15.49 cs.removeChangeListener(l);
15.50 }
15.51 -
15.52 +
15.53 @Override
15.54 public void propertyChange(PropertyChangeEvent pce) {
15.55 cs.fireChange();
15.56 - try{
15.57 + try {
15.58 validate();
15.59 - }catch(WizardValidationException ex) {
15.60 - if(wiz!=null) {
15.61 + } catch (WizardValidationException ex) {
15.62 + if (wiz != null) {
15.63 wiz.putProperty(WizardDescriptor.PROP_ERROR_MESSAGE, "Please select a license!");
15.64 }
15.65 }
15.66 }
15.67 -
15.68 +
15.69 @Override
15.70 public void readSettings(WizardDescriptor wiz) {
15.71 this.wiz = wiz;
15.72 @@ -118,12 +117,12 @@
15.73 if (obj != null && obj instanceof String) {
15.74 getComponent().setLicenseText((String) obj);
15.75 }
15.76 - Boolean b = (Boolean)wiz.getProperty(WizardProperties.KEY_UPDATE_DEFAULT_PROJECT_LICENSE);
15.77 - if(b != null) {
15.78 + Boolean b = (Boolean) wiz.getProperty(WizardProperties.KEY_UPDATE_DEFAULT_PROJECT_LICENSE);
15.79 + if (b != null) {
15.80 getComponent().setUpdateDefaultProjectLicense(b);
15.81 }
15.82 }
15.83 -
15.84 +
15.85 @Override
15.86 public void storeSettings(WizardDescriptor wiz) {
15.87 wiz.putProperty(WizardProperties.KEY_LICENSE_TEXT, getComponent().getLicenseText());
15.88 @@ -134,16 +133,15 @@
15.89 @Override
15.90 public void validate() throws WizardValidationException {
15.91 valid = true;
15.92 - if (getComponent().getLicenseText() == null ||
15.93 - getComponent().getLicenseText().equals(WizardProperties.VALUE_DEFAULT_LICENSE_TEXT)) {
15.94 + if (getComponent().getLicenseText() == null
15.95 + || getComponent().getLicenseText().equals(WizardProperties.VALUE_DEFAULT_LICENSE_TEXT)) {
15.96 valid = false;
15.97 throw new WizardValidationException(component, "Please select a license!", null);
15.98 }
15.99 - if(wiz!=null) {
15.100 + if (wiz != null) {
15.101 wiz.putProperty(WizardDescriptor.PROP_INFO_MESSAGE, null);
15.102 wiz.putProperty(WizardDescriptor.PROP_WARNING_MESSAGE, null);
15.103 wiz.putProperty(WizardDescriptor.PROP_ERROR_MESSAGE, null);
15.104 }
15.105 }
15.106 -
15.107 }
16.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/LineEndingsPanel.java Sun Dec 30 21:11:51 2012 +0100
16.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/LineEndingsPanel.java Wed Jan 02 13:38:30 2013 +0100
16.3 @@ -42,7 +42,6 @@
16.4 *
16.5 * Created on Mar 20, 2009, 12:33:04 AM
16.6 */
16.7 -
16.8 package org.netbeans.modules.licensechanger.spi.wizard;
16.9
16.10 import javax.swing.JRadioButton;
16.11 @@ -55,8 +54,10 @@
16.12 * @author Administrator
16.13 */
16.14 public class LineEndingsPanel extends javax.swing.JPanel {
16.15 -
16.16 - /** Creates new form LineEndingsPanel */
16.17 +
16.18 + /**
16.19 + * Creates new form LineEndingsPanel
16.20 + */
16.21 public LineEndingsPanel() {
16.22 initComponents();
16.23 forceCrlf.putClientProperty(WizardProperties.PROP_ENDING, LineEndingPreference.FORCE_CRLF);
16.24 @@ -65,10 +66,10 @@
16.25 systemDefaultButton.putClientProperty(WizardProperties.PROP_ENDING, LineEndingPreference.SYSTEM_DEFAULT);
16.26 }
16.27
16.28 - /** This method is called from within the constructor to
16.29 - * initialize the form.
16.30 - * WARNING: Do NOT modify this code. The content of this method is
16.31 - * always regenerated by the Form Editor.
16.32 + /**
16.33 + * This method is called from within the constructor to initialize the form.
16.34 + * WARNING: Do NOT modify this code. The content of this method is always
16.35 + * regenerated by the Form Editor.
16.36 */
16.37 @SuppressWarnings("unchecked")
16.38 // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
16.39 @@ -145,7 +146,7 @@
16.40 }// </editor-fold>//GEN-END:initComponents
16.41
16.42 private void lineEndingPreferenceChanged(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_lineEndingPreferenceChanged
16.43 - for (JRadioButton b : new JRadioButton[] { forceCrlf, newlineButton, noChangeButton, systemDefaultButton }) {
16.44 + for (JRadioButton b : new JRadioButton[]{forceCrlf, newlineButton, noChangeButton, systemDefaultButton}) {
16.45 if (b.isSelected()) {
16.46 LineEndingPreference x = (LineEndingPreference) b.getClientProperty(WizardProperties.PROP_ENDING);
16.47 if (x != null) {
16.48 @@ -160,8 +161,6 @@
16.49 String ending = NbPreferences.forModule(LineEndingsPanel.class).get(WizardProperties.PROP_ENDING, LineEndingPreference.NO_CHANGE.name());
16.50 return LineEndingPreference.valueOf(ending);
16.51 }
16.52 -
16.53 -
16.54 // Variables declaration - do not modify//GEN-BEGIN:variables
16.55 private javax.swing.ButtonGroup buttonGroup1;
16.56 private javax.swing.JRadioButton forceCrlf;
16.57 @@ -169,5 +168,4 @@
16.58 private javax.swing.JRadioButton noChangeButton;
16.59 private javax.swing.JRadioButton systemDefaultButton;
16.60 // End of variables declaration//GEN-END:variables
16.61 -
16.62 }
17.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/PreviewPanel.java Sun Dec 30 21:11:51 2012 +0100
17.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/PreviewPanel.java Wed Jan 02 13:38:30 2013 +0100
17.3 @@ -57,6 +57,7 @@
17.4 import org.netbeans.modules.licensechanger.spi.wizard.utils.FileChildren.FileItem;
17.5 import org.netbeans.modules.licensechanger.spi.wizard.utils.FileLoader;
17.6 import org.netbeans.modules.licensechanger.spi.wizard.utils.WizardProperties;
17.7 +import org.netbeans.swing.outline.DefaultOutlineModel;
17.8 import org.openide.explorer.ExplorerManager;
17.9 import org.openide.explorer.view.CheckableNode;
17.10 import org.openide.explorer.view.OutlineView;
17.11 @@ -67,15 +68,12 @@
17.12 import org.openide.util.Exceptions;
17.13 import org.openide.util.RequestProcessor;
17.14 import org.openide.util.RequestProcessor.Task;
17.15 -import static org.netbeans.modules.licensechanger.spi.wizard.Bundle.*;
17.16 -import org.openide.util.NbBundle.Messages;
17.17
17.18 /**
17.19 *
17.20 * @author Tim Boudreau
17.21 * @author Nils Hoffmann (Refactoring, Diff API inclusion)
17.22 */
17.23 -@Messages("PreviewPanel.fileList.nodeHeaderLabel=Selected Files")
17.24 public class PreviewPanel extends javax.swing.JPanel implements ExplorerManager.Provider, PropertyChangeListener {
17.25
17.26 private final ExplorerManager mgr = new ExplorerManager();
17.27 @@ -91,23 +89,21 @@
17.28 jLabel3.setText(" ");
17.29 updateView();
17.30 }
17.31 -
17.32 +
17.33 private void updateView() {
17.34 OutlineView ov = (OutlineView) fileList;
17.35 ov.getOutline().setRootVisible(false);
17.36 ov.setPopupAllowed(false);
17.37 ov.setTreeSortable(false);
17.38 ov.getOutline().setShowGrid(false);
17.39 - String headerName = PreviewPanel_fileList_nodeHeaderLabel(); // NOI18N
17.40 - ov.getOutline().getTableHeader().getColumnModel().getColumn(0).setHeaderValue(headerName);
17.41 + String headerName = org.openide.util.NbBundle.getMessage(PreviewPanel.class, "PreviewPanel.nodesLabel.text"); // NOI18N
17.42 + ((DefaultOutlineModel) ov.getOutline().getOutlineModel()).setNodesColumnLabel(headerName);
17.43 + setName("Preview Changes");
17.44 }
17.45
17.46 public void setFolders(Set<FileObject> folders, Set<FileHandler> fileHandler) {
17.47 Children kids = Children.create(new FileChildren(folders, fileHandler), true);
17.48 mgr.setRootContext(new AbstractNode(kids));
17.49 -// view().setCheckboxesVisible(true);
17.50 -// view().setCheckboxesEnabled(true);
17.51 -// view().setListEnabled(true);
17.52 updateView();
17.53 updateItems();
17.54 }
17.55 @@ -128,9 +124,6 @@
17.56 firePropertyChange(WizardProperties.KEY_ITEMS, null, s);
17.57 }
17.58
17.59 -// private CheckboxListView view() {
17.60 -// return (CheckboxListView) fileList;
17.61 -// }
17.62 public void setLicenseText(String licenseText) {
17.63 this.licenseText = licenseText;
17.64 firePropertyChange(WizardProperties.KEY_LICENSE_TEXT, null, this.licenseText);
18.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/PreviewWizardPanel.java Sun Dec 30 21:11:51 2012 +0100
18.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/PreviewWizardPanel.java Wed Jan 02 13:38:30 2013 +0100
18.3 @@ -36,7 +36,6 @@
18.4 *
18.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
18.6 */
18.7 -
18.8 package org.netbeans.modules.licensechanger.spi.wizard;
18.9
18.10 import java.beans.PropertyChangeEvent;
18.11 @@ -53,10 +52,10 @@
18.12 import org.openide.util.HelpCtx;
18.13
18.14 /**
18.15 - *
18.16 + *
18.17 * @author Nils Hoffmann
18.18 */
18.19 -public class PreviewWizardPanel implements WizardDescriptor.ValidatingPanel<WizardDescriptor>, PropertyChangeListener{
18.20 +public class PreviewWizardPanel implements WizardDescriptor.ValidatingPanel<WizardDescriptor>, PropertyChangeListener {
18.21
18.22 /**
18.23 * The visual component that displays this panel. If you need to access the
18.24 @@ -92,24 +91,24 @@
18.25 public boolean isValid() {
18.26 return valid;
18.27 }
18.28 -
18.29 +
18.30 @Override
18.31 public void addChangeListener(ChangeListener l) {
18.32 cs.addChangeListener(l);
18.33 }
18.34 -
18.35 +
18.36 @Override
18.37 public void removeChangeListener(ChangeListener l) {
18.38 cs.removeChangeListener(l);
18.39 }
18.40 -
18.41 +
18.42 @Override
18.43 public void propertyChange(PropertyChangeEvent pce) {
18.44 cs.fireChange();
18.45 try {
18.46 validate();
18.47 } catch (WizardValidationException ex) {
18.48 - if(wiz!=null) {
18.49 + if (wiz != null) {
18.50 wiz.putProperty(WizardDescriptor.PROP_ERROR_MESSAGE, ex.getMessage());
18.51 }
18.52 }
18.53 @@ -119,16 +118,16 @@
18.54 public void readSettings(WizardDescriptor wiz) {
18.55 this.wiz = wiz;
18.56 @SuppressWarnings("unchecked")
18.57 - String license = (String)wiz.getProperty(WizardProperties.KEY_LICENSE_TEXT);
18.58 - if(license!=null) {
18.59 + String license = (String) wiz.getProperty(WizardProperties.KEY_LICENSE_TEXT);
18.60 + if (license != null) {
18.61 getComponent().setLicenseText(license);
18.62 }
18.63 getComponent().setProperties(wiz.getProperties());
18.64 @SuppressWarnings("unchecked")
18.65 - Set<FileHandler> fileHandler = (Set<FileHandler>)wiz.getProperty(WizardProperties.KEY_FILE_HANDLERS);
18.66 + Set<FileHandler> fileHandler = (Set<FileHandler>) wiz.getProperty(WizardProperties.KEY_FILE_HANDLERS);
18.67 @SuppressWarnings("unchecked")
18.68 - Set<FileObject> folders = (Set<FileObject>)wiz.getProperty(WizardProperties.KEY_FOLDERS);
18.69 - if(fileHandler!=null && folders != null) {
18.70 + Set<FileObject> folders = (Set<FileObject>) wiz.getProperty(WizardProperties.KEY_FOLDERS);
18.71 + if (fileHandler != null && folders != null) {
18.72 getComponent().setFolders(folders, fileHandler);
18.73 }
18.74 wiz.putProperty(WizardProperties.KEY_ITEMS, null);
18.75 @@ -143,12 +142,12 @@
18.76 public void validate() throws WizardValidationException {
18.77 valid = true;
18.78 Set<FileItem> keyItems = getComponent().getSelectedItems();
18.79 -
18.80 - if(keyItems==null || keyItems.isEmpty()) {
18.81 +
18.82 + if (keyItems == null || keyItems.isEmpty()) {
18.83 valid = false;
18.84 throw new WizardValidationException(component, "Please select at least one file!", null);
18.85 }
18.86 - if(wiz!=null) {
18.87 + if (wiz != null) {
18.88 wiz.putProperty(WizardDescriptor.PROP_INFO_MESSAGE, null);
18.89 wiz.putProperty(WizardDescriptor.PROP_WARNING_MESSAGE, null);
18.90 wiz.putProperty(WizardDescriptor.PROP_ERROR_MESSAGE, null);
19.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/SelectFoldersPanel.java Sun Dec 30 21:11:51 2012 +0100
19.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/SelectFoldersPanel.java Wed Jan 02 13:38:30 2013 +0100
19.3 @@ -38,10 +38,12 @@
19.4 */
19.5 package org.netbeans.modules.licensechanger.spi.wizard;
19.6
19.7 -import java.util.HashSet;
19.8 +import java.util.Comparator;
19.9 import java.util.Set;
19.10 +import java.util.TreeSet;
19.11 import org.netbeans.modules.licensechanger.spi.wizard.utils.FolderChildren;
19.12 import org.netbeans.modules.licensechanger.spi.wizard.utils.WizardProperties;
19.13 +import org.netbeans.swing.outline.DefaultOutlineModel;
19.14 import org.openide.explorer.ExplorerManager;
19.15 import org.openide.explorer.view.CheckableNode;
19.16 import org.openide.explorer.view.OutlineView;
19.17 @@ -49,41 +51,33 @@
19.18 import org.openide.nodes.AbstractNode;
19.19 import org.openide.nodes.Children;
19.20 import org.openide.nodes.Node;
19.21 -import static org.netbeans.modules.licensechanger.spi.wizard.Bundle.*;
19.22 -import org.openide.util.NbBundle.Messages;
19.23
19.24 /**
19.25 *
19.26 * @author Tim Boudreau
19.27 * @author Nils Hoffmann (Refactoring)
19.28 */
19.29 -@Messages("SelectFoldersPanel.jScrollPane1.nodeHeaderLabel=Folders")
19.30 public class SelectFoldersPanel extends javax.swing.JPanel implements ExplorerManager.Provider {
19.31 -
19.32 +
19.33 private final ExplorerManager mgr = new ExplorerManager();
19.34 -
19.35 +
19.36 public SelectFoldersPanel() {
19.37 initComponents();
19.38 updateView();
19.39 + setName("Select Folders");
19.40 }
19.41 -
19.42 +
19.43 private void updateFolders() {
19.44 Set<FileObject> folders = getSelectedFolders();
19.45 - System.out.println("Selected folders: " + folders);
19.46 +// System.out.println("Selected folders: " + folders);
19.47 firePropertyChange(WizardProperties.KEY_FOLDERS, null, folders);
19.48 }
19.49 -
19.50 +
19.51 private void enableUI() {
19.52 -// view().setCheckboxesVisible(true);
19.53 -// view().setCheckboxesEnabled(true);
19.54 jLabel1.setEnabled(true);
19.55 -// view().setListEnabled(true);
19.56 updateView();
19.57 }
19.58
19.59 -// private CheckboxListView view() {
19.60 -// return (CheckboxListView) jScrollPane1;
19.61 -// }
19.62 /**
19.63 * This method is called from within the constructor to initialize the form.
19.64 * WARNING: Do NOT modify this code. The content of this method is always
19.65 @@ -130,7 +124,7 @@
19.66 public ExplorerManager getExplorerManager() {
19.67 return mgr;
19.68 }
19.69 -
19.70 +
19.71 public void setRootFiles(Set<FileObject> roots) {
19.72 AbstractNode root = new AbstractNode(Children.create(new FolderChildren(roots.toArray(new FileObject[roots.size()])) {
19.73 @Override
19.74 @@ -142,9 +136,14 @@
19.75 mgr.setRootContext(root);
19.76 firePropertyChange("rootFiles", null, roots);
19.77 }
19.78 -
19.79 +
19.80 public Set<FileObject> getSelectedFolders() {
19.81 - Set<FileObject> folders = new HashSet<FileObject>();
19.82 + Set<FileObject> folders = new TreeSet<FileObject>(new Comparator<FileObject>() {
19.83 + @Override
19.84 + public int compare(FileObject t, FileObject t1) {
19.85 + return t.getPath().compareTo(t1.getPath());
19.86 + }
19.87 + });
19.88 for (Node n : mgr.getRootContext().getChildren().getNodes(true)) {
19.89 CheckableNode cn = n.getLookup().lookup(CheckableNode.class);
19.90 if (cn != null && cn.isSelected()) {
19.91 @@ -156,15 +155,14 @@
19.92 }
19.93 return folders;
19.94 }
19.95 -
19.96 +
19.97 private void updateView() {
19.98 - // view().setNodeCheckObserver(this);
19.99 OutlineView ov = (OutlineView) jScrollPane1;
19.100 ov.getOutline().setRootVisible(false);
19.101 ov.setPopupAllowed(false);
19.102 ov.setTreeSortable(false);
19.103 - ov.setName("Selected Folders");
19.104 - String headerName = SelectFoldersPanel_jScrollPane1_nodeHeaderLabel(); // NOI18N
19.105 - ov.getOutline().getTableHeader().getColumnModel().getColumn(0).setHeaderValue(headerName);
19.106 + String headerName = org.openide.util.NbBundle.getMessage(SelectFoldersPanel.class, "SelectFoldersPanel.nodesLabel.text"); // NOI18N
19.107 + ((DefaultOutlineModel) ov.getOutline().getOutlineModel()).setNodesColumnLabel(headerName);
19.108 + setName("Select Folders");
19.109 }
19.110 }
20.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/SelectFoldersWizardPanel.java Sun Dec 30 21:11:51 2012 +0100
20.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/SelectFoldersWizardPanel.java Wed Jan 02 13:38:30 2013 +0100
20.3 @@ -36,7 +36,6 @@
20.4 *
20.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
20.6 */
20.7 -
20.8 package org.netbeans.modules.licensechanger.spi.wizard;
20.9
20.10 import java.beans.PropertyChangeEvent;
20.11 @@ -51,7 +50,7 @@
20.12 import org.openide.util.HelpCtx;
20.13
20.14 /**
20.15 - *
20.16 + *
20.17 * @author Nils Hoffmann
20.18 */
20.19 public class SelectFoldersWizardPanel implements WizardDescriptor.ValidatingPanel<WizardDescriptor>, PropertyChangeListener {
20.20 @@ -90,24 +89,24 @@
20.21 public boolean isValid() {
20.22 return valid;
20.23 }
20.24 -
20.25 +
20.26 @Override
20.27 public void addChangeListener(ChangeListener l) {
20.28 cs.addChangeListener(l);
20.29 }
20.30 -
20.31 +
20.32 @Override
20.33 public void removeChangeListener(ChangeListener l) {
20.34 cs.removeChangeListener(l);
20.35 }
20.36 -
20.37 +
20.38 @Override
20.39 public void propertyChange(PropertyChangeEvent pce) {
20.40 cs.fireChange();
20.41 - try{
20.42 + try {
20.43 validate();
20.44 - }catch(WizardValidationException ex) {
20.45 - if(wiz!=null) {
20.46 + } catch (WizardValidationException ex) {
20.47 + if (wiz != null) {
20.48 wiz.putProperty(WizardDescriptor.PROP_ERROR_MESSAGE, ex.getMessage());
20.49 }
20.50 }
20.51 @@ -117,15 +116,15 @@
20.52 public void readSettings(WizardDescriptor wiz) {
20.53 this.wiz = wiz;
20.54 @SuppressWarnings("unchecked")
20.55 - Set<FileObject> folders = (Set<FileObject>)wiz.getProperty(WizardProperties.KEY_FOLDERS);
20.56 - if(folders==null || folders.isEmpty()) {
20.57 + Set<FileObject> folders = (Set<FileObject>) wiz.getProperty(WizardProperties.KEY_FOLDERS);
20.58 + if (folders == null || folders.isEmpty()) {
20.59 Object obj = wiz.getProperty(WizardProperties.KEY_ROOT_FILES);
20.60 - if(obj!=null) {
20.61 + if (obj != null) {
20.62 @SuppressWarnings("unchecked")
20.63 - Set<FileObject> sobj = (Set<FileObject>)obj;
20.64 + Set<FileObject> sobj = (Set<FileObject>) obj;
20.65 getComponent().setRootFiles(sobj);
20.66 }
20.67 - }else{
20.68 + } else {
20.69 getComponent().setRootFiles(folders);
20.70 }
20.71 }
20.72 @@ -140,11 +139,11 @@
20.73 public void validate() throws WizardValidationException {
20.74 valid = true;
20.75 Set<FileObject> folders = getComponent().getSelectedFolders();
20.76 - if(folders==null || folders.isEmpty()) {
20.77 + if (folders == null || folders.isEmpty()) {
20.78 valid = false;
20.79 throw new WizardValidationException(component, "Please select at least one folder!", null);
20.80 }
20.81 - if(wiz!=null) {
20.82 + if (wiz != null) {
20.83 wiz.putProperty(WizardDescriptor.PROP_INFO_MESSAGE, null);
20.84 wiz.putProperty(WizardDescriptor.PROP_WARNING_MESSAGE, null);
20.85 wiz.putProperty(WizardDescriptor.PROP_ERROR_MESSAGE, null);
21.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/CheckableNodeCapability.java Sun Dec 30 21:11:51 2012 +0100
21.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/CheckableNodeCapability.java Wed Jan 02 13:38:30 2013 +0100
21.3 @@ -36,15 +36,14 @@
21.4 *
21.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
21.6 */
21.7 -
21.8 package org.netbeans.modules.licensechanger.spi.wizard.utils;
21.9
21.10 import org.openide.explorer.view.CheckableNode;
21.11
21.12 /**
21.13 - * Implements {@see CheckableNode} to allow display and
21.14 - * use of checkable nodes in views.
21.15 - *
21.16 + * Implements {@link CheckableNode} to allow display and use of checkable nodes
21.17 + * in views.
21.18 + *
21.19 * @author Nils Hoffmann
21.20 */
21.21 public class CheckableNodeCapability implements CheckableNode {
21.22 @@ -52,7 +51,7 @@
21.23 private boolean checkable = true;
21.24 private boolean checkEnabled = true;
21.25 private boolean selected = true;
21.26 -
21.27 +
21.28 @Override
21.29 public boolean isCheckable() {
21.30 return checkable;
21.31 @@ -72,5 +71,4 @@
21.32 public void setSelected(Boolean selected) {
21.33 this.selected = selected.booleanValue();
21.34 }
21.35 -
21.36 }
22.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/FileChildren.java Sun Dec 30 21:11:51 2012 +0100
22.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/FileChildren.java Wed Jan 02 13:38:30 2013 +0100
22.3 @@ -36,7 +36,6 @@
22.4 *
22.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
22.6 */
22.7 -
22.8 package org.netbeans.modules.licensechanger.spi.wizard.utils;
22.9
22.10 import java.util.Collection;
22.11 @@ -92,8 +91,8 @@
22.12 DataObject dob = DataObject.find(fo);
22.13 FileItem item = new FileItem(h, fo);
22.14 items.add(item);
22.15 - FN fn = new FN (dob.getNodeDelegate(), item);
22.16 - boolean shouldChange = !h.shouldSkipFile(fo);
22.17 + FN fn = new FN(dob.getNodeDelegate(), item);
22.18 + boolean shouldChange = !h.shouldSkipFile(fo);
22.19 result.add(fn);
22.20 // fn.setValue (CheckboxListView.SELECTED, shouldChange);
22.21 break;
22.22 @@ -130,7 +129,7 @@
22.23
22.24 FN(Node orig, FileItem item) {
22.25 super(orig, Children.LEAF, new ProxyLookup(
22.26 - Lookups.fixed(item,new CheckableNodeCapability()),
22.27 + Lookups.fixed(item, new CheckableNodeCapability()),
22.28 orig.getLookup()));
22.29 disableDelegation(DELEGATE_GET_ACTIONS);
22.30 disableDelegation(DELEGATE_GET_CONTEXT_ACTIONS);
23.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/FileLoader.java Sun Dec 30 21:11:51 2012 +0100
23.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/FileLoader.java Wed Jan 02 13:38:30 2013 +0100
23.3 @@ -36,7 +36,6 @@
23.4 *
23.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
23.6 */
23.7 -
23.8 package org.netbeans.modules.licensechanger.spi.wizard.utils;
23.9
23.10 import java.io.BufferedInputStream;
23.11 @@ -54,6 +53,7 @@
23.12 * @author Nils Hoffmann (Refactoring)
23.13 */
23.14 public class FileLoader {
23.15 +
23.16 public static String loadFile(FileObject file) throws IOException {
23.17 Charset encoding = FileEncodingQuery.getEncoding(file);
23.18 InputStream in = new BufferedInputStream(file.getInputStream());
23.19 @@ -62,7 +62,7 @@
23.20 FileUtil.copy(in, out);
23.21 try {
23.22 String result = new String(out.toByteArray(), encoding.name());
23.23 - String sep = System.getProperty ("line.separator");
23.24 + String sep = System.getProperty("line.separator");
23.25 //Convert everything internally to use \n
23.26 if (!"\n".equals(sep) && sep != null) {
23.27 return result.replaceAll(sep, "\n");
24.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/FolderChildren.java Sun Dec 30 21:11:51 2012 +0100
24.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/FolderChildren.java Wed Jan 02 13:38:30 2013 +0100
24.3 @@ -36,7 +36,6 @@
24.4 *
24.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
24.6 */
24.7 -
24.8 package org.netbeans.modules.licensechanger.spi.wizard.utils;
24.9
24.10 import java.awt.EventQueue;
24.11 @@ -64,12 +63,13 @@
24.12 * @author Nils Hoffmann (changed to use CheckableNodeCapability)
24.13 */
24.14 public abstract class FolderChildren extends ChildFactory.Detachable<FileObject> implements Runnable {
24.15 +
24.16 private FileObject[] roots;
24.17 volatile int keyCount = 0;
24.18 private int nodeCount = 0;
24.19 private volatile boolean cancelled = false;
24.20
24.21 - public FolderChildren (FileObject[] roots) {
24.22 + public FolderChildren(FileObject[] roots) {
24.23 this.roots = roots;
24.24 }
24.25
24.26 @@ -94,12 +94,12 @@
24.27 cancelled = true;
24.28 }
24.29
24.30 - private boolean shouldSkipFolder (FileObject folder) {
24.31 + private boolean shouldSkipFolder(FileObject folder) {
24.32 // XXX use VisibilityQuery instead
24.33 String path = folder.getPath();
24.34 - return path.contains(".svn") || path.contains(".cvs") || path.contains(".hg") ||
24.35 - path.endsWith(".svn") || path.endsWith(".cvs") || path.endsWith(".hg") ||
24.36 - path.contains("target") || path.endsWith("target") || path.contains("build") || path.endsWith("build");
24.37 + return path.contains(".svn") || path.contains(".cvs") || path.contains(".hg")
24.38 + || path.endsWith(".svn") || path.endsWith(".cvs") || path.endsWith(".hg")
24.39 + || path.contains("target") || path.endsWith("target") || path.contains("build") || path.endsWith("build");
24.40 }
24.41
24.42 @Override
24.43 @@ -149,9 +149,10 @@
24.44 }
24.45
24.46 private static final class FN extends FilterNode {
24.47 +
24.48 FN(Node orig, FileObject f) {
24.49 - super (orig, Children.LEAF, new ProxyLookup(
24.50 - Lookups.fixed(f,new CheckableNodeCapability()),
24.51 + super(orig, Children.LEAF, new ProxyLookup(
24.52 + Lookups.fixed(f, new CheckableNodeCapability()),
24.53 orig.getLookup()));
24.54 disableDelegation(DELEGATE_GET_ACTIONS);
24.55 disableDelegation(DELEGATE_GET_CONTEXT_ACTIONS);
24.56 @@ -163,13 +164,12 @@
24.57 disableDelegation(DELEGATE_GET_NAME);
24.58 String p = f.getPath();
24.59 // XXX this is a pretty arbitrary list... maybe check SharabilityQuery?
24.60 - if (!p.endsWith("nbproject") &&
24.61 - !p.endsWith("nbproject/private")) { //NOI18N
24.62 + if (!p.endsWith("nbproject")
24.63 + && !p.endsWith("nbproject/private")) { //NOI18N
24.64 // setValue (CheckboxListView.SELECTED, Boolean.TRUE);
24.65 -
24.66 - }else{
24.67 + } else {
24.68 CheckableNode cn = getLookup().lookup(CheckableNode.class);
24.69 - if(cn!=null) {
24.70 + if (cn != null) {
24.71 cn.setSelected(false);
24.72 }
24.73 }
25.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/LicenseChangerRunnable.java Sun Dec 30 21:11:51 2012 +0100
25.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/LicenseChangerRunnable.java Wed Jan 02 13:38:30 2013 +0100
25.3 @@ -53,7 +53,6 @@
25.4 import org.netbeans.modules.maven.model.pom.Properties;
25.5 import org.openide.WizardDescriptor;
25.6 import org.openide.filesystems.*;
25.7 -import org.openide.filesystems.FileUtil;
25.8 import org.openide.util.EditableProperties;
25.9 import org.openide.util.Exceptions;
25.10
25.11 @@ -92,7 +91,7 @@
25.12 Exceptions.printStackTrace(ex);
25.13 throw new RuntimeException(ex);
25.14 } finally {
25.15 - if(in!=null) {
25.16 + if (in != null) {
25.17 in.close();
25.18 }
25.19 }
25.20 @@ -105,7 +104,7 @@
25.21 Exceptions.printStackTrace(ex);
25.22 throw new RuntimeException(ex);
25.23 } finally {
25.24 - if(out!=null) {
25.25 + if (out != null) {
25.26 out.close();
25.27 }
25.28 }
25.29 @@ -155,7 +154,7 @@
25.30 }
25.31 Boolean updateProjectLicense = (Boolean) wizard.getProperty(WizardProperties.KEY_UPDATE_DEFAULT_PROJECT_LICENSE);
25.32 if (updateProjectLicense) {
25.33 - System.out.println("Updating default license header!");
25.34 +// System.out.println("Updating default license header!");
25.35 Project project = (Project) wizard.getProperty(WizardProperties.KEY_PROJECT);
25.36 Sources source = ProjectUtils.getSources(project);
25.37 for (SourceGroup group : source.getSourceGroups(Sources.TYPE_GENERIC)) {
25.38 @@ -165,7 +164,7 @@
25.39 final FileObject projectProps = FileUtil.createData(nbprojectDir, "project.properties");
25.40 boolean hasProjectProperties = group.contains(projectProps);
25.41 if (hasProjectProperties) {
25.42 - System.out.println("Found project.properties at " + projectProps.getPath());
25.43 +// System.out.println("Found project.properties at " + projectProps.getPath());
25.44 ProjectManager.mutex().writeAccess(new Runnable() {
25.45 @Override
25.46 public void run() {
25.47 @@ -195,7 +194,7 @@
25.48 //check for pom.xml
25.49 FileObject pom = group.getRootFolder().getFileObject("pom.xml");
25.50 if (pom != null) {
25.51 - System.out.println("Found maven pom.xml at " + pom.getPath());
25.52 +// System.out.println("Found maven pom.xml at " + pom.getPath());
25.53 //found pom-based maven project
25.54 // String netbeansHintLicense = "<netbeans.hint.license>" + licenseName + "</netbeans.hint.license>";
25.55 // System.out.println("Please add " + netbeansHintLicense + " within your pom.xml <properties> section!");
26.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/LineEndingPreference.java Sun Dec 30 21:11:51 2012 +0100
26.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/LineEndingPreference.java Wed Jan 02 13:38:30 2013 +0100
26.3 @@ -36,7 +36,6 @@
26.4 *
26.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
26.6 */
26.7 -
26.8 package org.netbeans.modules.licensechanger.spi.wizard.utils;
26.9
26.10 /**
26.11 @@ -45,30 +44,31 @@
26.12 * @author Tim Boudreau
26.13 */
26.14 public enum LineEndingPreference {
26.15 +
26.16 FORCE_CRLF,
26.17 NO_CHANGE,
26.18 FORCE_NEWLINE,
26.19 SYSTEM_DEFAULT;
26.20 -
26.21 - public static String convertLineEndings (LineEndingPreference pref, String old, String nue) {
26.22 +
26.23 + public static String convertLineEndings(LineEndingPreference pref, String old, String nue) {
26.24 boolean oldHasCrlf = old.contains("\r\n"); //NOI18N
26.25 switch (pref) {
26.26 - case FORCE_CRLF :
26.27 + case FORCE_CRLF:
26.28 return nue.replaceAll("\n", "\r\n"); //NOI18N
26.29 - case FORCE_NEWLINE :
26.30 + case FORCE_NEWLINE:
26.31 //We already converted everything to newline only on load
26.32 return nue;
26.33 - case NO_CHANGE :
26.34 + case NO_CHANGE:
26.35 return oldHasCrlf ? nue.replaceAll("\n", "\r\n") : //NOI18N
26.36 - nue;
26.37 - case SYSTEM_DEFAULT :
26.38 - String sep = System.getProperty( "line.separator" ); //NOI18N
26.39 + nue;
26.40 + case SYSTEM_DEFAULT:
26.41 + String sep = System.getProperty("line.separator"); //NOI18N
26.42 if ("\n".equals(sep)) {
26.43 return nue;
26.44 } else {
26.45 - return nue.replaceAll("\n", sep);//NOI18N
26.46 + return nue.replaceAll("\n", sep);//NOI18N
26.47 }
26.48 - default :
26.49 + default:
26.50 throw new AssertionError();
26.51 }
26.52 }
27.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/Offsets.java Sun Dec 30 21:11:51 2012 +0100
27.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/Offsets.java Wed Jan 02 13:38:30 2013 +0100
27.3 @@ -36,7 +36,6 @@
27.4 *
27.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
27.6 */
27.7 -
27.8 package org.netbeans.modules.licensechanger.spi.wizard.utils;
27.9
27.10 /**
27.11 @@ -44,6 +43,7 @@
27.12 * @author Tim Boudreau
27.13 */
27.14 public final class Offsets {
27.15 +
27.16 private final int start;
27.17 private final int end;
27.18
28.1 --- a/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/WizardProperties.java Sun Dec 30 21:11:51 2012 +0100
28.2 +++ b/licensechanger/src/org/netbeans/modules/licensechanger/spi/wizard/utils/WizardProperties.java Wed Jan 02 13:38:30 2013 +0100
28.3 @@ -36,12 +36,11 @@
28.4 *
28.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
28.6 */
28.7 -
28.8 package org.netbeans.modules.licensechanger.spi.wizard.utils;
28.9
28.10 /**
28.11 * Central class for Wizard-related property keys.
28.12 - *
28.13 + *
28.14 * @author Nils Hoffmann
28.15 */
28.16 public final class WizardProperties {
28.17 @@ -59,5 +58,7 @@
28.18 public static final String KEY_PROJECT = "project";
28.19 public static final String KEY_COPYRIGHT_HOLDER = "project.organization";
28.20 public static final String KEY_STORE_IN_USER_PROPERTIES = "storeInUserProperties";
28.21 - private WizardProperties(){}
28.22 +
28.23 + private WizardProperties() {
28.24 + }
28.25 }
29.1 --- a/licensechanger/test/unit/src/org/netbeans/modules/licensechanger/spi/handlers/GroovyFileHandlerTest.java Sun Dec 30 21:11:51 2012 +0100
29.2 +++ b/licensechanger/test/unit/src/org/netbeans/modules/licensechanger/spi/handlers/GroovyFileHandlerTest.java Wed Jan 02 13:38:30 2013 +0100
29.3 @@ -36,7 +36,6 @@
29.4 *
29.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
29.6 */
29.7 -
29.8 package org.netbeans.modules.licensechanger.spi.handlers;
29.9
29.10 import java.io.ByteArrayOutputStream;
29.11 @@ -54,39 +53,39 @@
29.12 * @author Nils Hoffmann
29.13 */
29.14 public class GroovyFileHandlerTest {
29.15 -
29.16 - private final Map<String,Object> props = Collections.emptyMap();
29.17 +
29.18 + private final Map<String, Object> props = Collections.emptyMap();
29.19
29.20 void runTest(String infix) throws Exception {
29.21 String golden = getGolden(infix);
29.22 String license = getLicense();
29.23 - for (int i=1; i <= 12; i++) {
29.24 - String header = "resources/groovy/header_"+i+".txt";
29.25 - String template = "resources/groovy/groovy_"+infix+"_template.txt";
29.26 - System.out.println("Test "+" header_" + i+".txt with groovy_"+infix+"_template.txt");
29.27 - testOneVersion(golden, license, merge(header,template));
29.28 + for (int i = 1; i <= 12; i++) {
29.29 + String header = "resources/groovy/header_" + i + ".txt";
29.30 + String template = "resources/groovy/groovy_" + infix + "_template.txt";
29.31 + System.out.println("Test " + " header_" + i + ".txt with groovy_" + infix + "_template.txt");
29.32 + testOneVersion(golden, license, merge(header, template));
29.33 }
29.34 }
29.35 -
29.36 +
29.37 @Test
29.38 public void testGroovyClass() throws Exception {
29.39 System.out.println("testGroovyClass");
29.40 runTest("class");
29.41 }
29.42 -
29.43 +
29.44 /**
29.45 * FIXME This test currently fails due to the removal of the author comment.
29.46 * This is probably intended, but might prove to be a bug for groovy files,
29.47 * as it would unexpectedly remove comments.
29.48 - *
29.49 - * @throws Exception
29.50 + *
29.51 + * @throws Exception
29.52 */
29.53 - @Test(expected=AssertionError.class)
29.54 + @Test(expected = AssertionError.class)
29.55 public void testGroovyClassNoPackage() throws Exception {
29.56 System.out.println("testGroovyClassNoPackage");
29.57 runTest("class_nopackage");
29.58 }
29.59 -
29.60 +
29.61 @Test
29.62 public void testGroovyScript() throws Exception {
29.63 System.out.println("testGroovyScript");
29.64 @@ -96,15 +95,15 @@
29.65 private void testOneVersion(String golden, String license, String original) throws Exception {
29.66 GroovyFileHandler instance = new GroovyFileHandler();
29.67 String processed = instance.transform(original, license, props);
29.68 - assertEqualsLineByLine (golden, processed);
29.69 + assertEqualsLineByLine(golden, processed);
29.70 }
29.71
29.72 - static void assertEqualsLineByLine (String golden, String processed) {
29.73 + static void assertEqualsLineByLine(String golden, String processed) {
29.74 String[] g = FileHandler.splitIntoLines(golden);
29.75 String[] p = FileHandler.splitIntoLines(processed);
29.76 - for (int i=0; i < Math.min (g.length, p.length); i++) {
29.77 - if(!g[i].equals(p[i])) {
29.78 - assertEquals ("Difference between files at line " + i + "\n", g[i], p[i]);
29.79 + for (int i = 0; i < Math.min(g.length, p.length); i++) {
29.80 + if (!g[i].equals(p[i])) {
29.81 + assertEquals("Difference between files at line " + i + "\n", g[i], p[i]);
29.82 }
29.83 }
29.84 }
29.85 @@ -115,29 +114,28 @@
29.86 sb.append(readFile(template));
29.87 return sb.toString();
29.88 }
29.89 -
29.90 +
29.91 private static String getGolden(String infix) throws Exception {
29.92 - return readFile ("resources/groovy/groovy_"+infix+"_golden.txt");
29.93 + return readFile("resources/groovy/groovy_" + infix + "_golden.txt");
29.94 }
29.95
29.96 static String getLicense() throws Exception {
29.97 - return readFile ("fake_license.txt");
29.98 + return readFile("fake_license.txt");
29.99 }
29.100
29.101 - static String readFile (String name) throws Exception {
29.102 + static String readFile(String name) throws Exception {
29.103 InputStream in = GroovyFileHandlerTest.class.getResourceAsStream(name);
29.104 if (in == null) {
29.105 - fail ("No input stream for " + name);
29.106 + fail("No input stream for " + name);
29.107 }
29.108 ByteArrayOutputStream out = new ByteArrayOutputStream();
29.109 try {
29.110 - FileUtil.copy (in, out);
29.111 + FileUtil.copy(in, out);
29.112 } finally {
29.113 in.close();
29.114 out.close();
29.115 }
29.116 - String result = new String (out.toByteArray(), "UTF-8");
29.117 + String result = new String(out.toByteArray(), "UTF-8");
29.118 return result.replace("\r\n", "\n");
29.119 }
29.120 -
29.121 }
30.1 --- a/licensechanger/test/unit/src/org/netbeans/modules/licensechanger/spi/handlers/JavaFileHandlerTest.java Sun Dec 30 21:11:51 2012 +0100
30.2 +++ b/licensechanger/test/unit/src/org/netbeans/modules/licensechanger/spi/handlers/JavaFileHandlerTest.java Wed Jan 02 13:38:30 2013 +0100
30.3 @@ -36,7 +36,6 @@
30.4 *
30.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
30.6 */
30.7 -
30.8 package org.netbeans.modules.licensechanger.spi.handlers;
30.9
30.10 import java.io.ByteArrayOutputStream;
30.11 @@ -53,15 +52,15 @@
30.12 * @author Tim Boudreau
30.13 */
30.14 public class JavaFileHandlerTest {
30.15 -
30.16 - private final Map<String,Object> props = Collections.emptyMap();
30.17 +
30.18 + private final Map<String, Object> props = Collections.emptyMap();
30.19
30.20 @Test
30.21 public void testStuff() throws Exception {
30.22 System.out.println("testStuff");
30.23 String golden = getGolden();
30.24 String license = getLicense();
30.25 - for (int i=1; i <= 12; i++) {
30.26 + for (int i = 1; i <= 12; i++) {
30.27 String filename = "java_" + i + ".txt";
30.28 testOneVersion(golden, license, filename);
30.29 }
30.30 @@ -70,20 +69,19 @@
30.31 private void testOneVersion(String golden, String license, String filename) throws Exception {
30.32 System.out.println("Test " + filename);
30.33 JavaFileHandler instance = new JavaFileHandler();
30.34 - String original = readFile (filename);
30.35 + String original = readFile(filename);
30.36 String processed = instance.transform(original, license, props);
30.37 - assertEqualsLineByLine (golden, processed, filename);
30.38 + assertEqualsLineByLine(golden, processed, filename);
30.39 }
30.40
30.41 - static void assertEqualsLineByLine (String golden, String processed, String filename) {
30.42 + static void assertEqualsLineByLine(String golden, String processed, String filename) {
30.43 String[] g = FileHandler.splitIntoLines(golden);
30.44 String[] p = FileHandler.splitIntoLines(processed);
30.45 - for (int i=0; i < Math.min (g.length, p.length); i++) {
30.46 - assertEquals ("Difference in " + filename + " at line " + i + "\n", g[i], p[i]);
30.47 + for (int i = 0; i < Math.min(g.length, p.length); i++) {
30.48 + assertEquals("Difference in " + filename + " at line " + i + "\n", g[i], p[i]);
30.49 }
30.50 }
30.51
30.52 -
30.53 // static void assertEqualsLineByLine (String golden, String processed, String filename) {
30.54 // StringTokenizer a = new StringTokenizer (golden, "\n");
30.55 // StringTokenizer b = new StringTokenizer (processed, "\n");
30.56 @@ -99,29 +97,27 @@
30.57 // }
30.58 //
30.59 // }
30.60 -
30.61 private static String getGolden() throws Exception {
30.62 - return readFile ("java_golden.txt");
30.63 + return readFile("java_golden.txt");
30.64 }
30.65
30.66 static String getLicense() throws Exception {
30.67 - return readFile ("fake_license.txt");
30.68 + return readFile("fake_license.txt");
30.69 }
30.70
30.71 - static String readFile (String name) throws Exception {
30.72 + static String readFile(String name) throws Exception {
30.73 InputStream in = JavaFileHandlerTest.class.getResourceAsStream(name);
30.74 if (in == null) {
30.75 - fail ("No input stream for " + name);
30.76 + fail("No input stream for " + name);
30.77 }
30.78 ByteArrayOutputStream out = new ByteArrayOutputStream();
30.79 try {
30.80 - FileUtil.copy (in, out);
30.81 + FileUtil.copy(in, out);
30.82 } finally {
30.83 in.close();
30.84 out.close();
30.85 }
30.86 - String result = new String (out.toByteArray(), "UTF-8");
30.87 + String result = new String(out.toByteArray(), "UTF-8");
30.88 return result.replace("\r\n", "\n");
30.89 }
30.90 -
30.91 }
31.1 --- a/licensechanger/test/unit/src/org/netbeans/modules/licensechanger/spi/handlers/PropertiesFileHandlerTest.java Sun Dec 30 21:11:51 2012 +0100
31.2 +++ b/licensechanger/test/unit/src/org/netbeans/modules/licensechanger/spi/handlers/PropertiesFileHandlerTest.java Wed Jan 02 13:38:30 2013 +0100
31.3 @@ -36,46 +36,46 @@
31.4 *
31.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
31.6 */
31.7 -
31.8 package org.netbeans.modules.licensechanger.spi.handlers;
31.9
31.10 import java.util.Collections;
31.11 import java.util.Map;
31.12 +import static org.junit.Assert.*;
31.13 import org.junit.Test;
31.14 -import static org.junit.Assert.*;
31.15
31.16 /**
31.17 *
31.18 * @author Tim Boudreau
31.19 */
31.20 public class PropertiesFileHandlerTest {
31.21 - private final Map<String,Object> props = Collections.emptyMap();
31.22 +
31.23 + private final Map<String, Object> props = Collections.emptyMap();
31.24
31.25 @Test
31.26 public void testStuff() throws Exception {
31.27 System.out.println("testStuff");
31.28 String golden = getGolden();
31.29 String license = JavaFileHandlerTest.getLicense();
31.30 - for (int i=1; i <= 4; i++) {
31.31 - testOneVersion (golden, license, "props_" + i + ".txt");
31.32 + for (int i = 1; i <= 4; i++) {
31.33 + testOneVersion(golden, license, "props_" + i + ".txt");
31.34 }
31.35 - assertEquals (0, 0);
31.36 + assertEquals(0, 0);
31.37 }
31.38
31.39 private void testOneVersion(String golden, String license, String filename) throws Exception {
31.40 System.out.println("Test " + filename);
31.41 PropertiesFileHandler instance = new PropertiesFileHandler();
31.42 - String original = JavaFileHandlerTest.readFile (filename);
31.43 + String original = JavaFileHandlerTest.readFile(filename);
31.44 String processed = instance.transform(original, license, props);
31.45 // if (!original.equals(processed)) {
31.46 // System.out.println("************************************");
31.47 // System.out.println(processed);
31.48 // System.out.println("************************************");
31.49 // }
31.50 - JavaFileHandlerTest.assertEqualsLineByLine (golden, processed, filename);
31.51 + JavaFileHandlerTest.assertEqualsLineByLine(golden, processed, filename);
31.52 }
31.53
31.54 private static String getGolden() throws Exception {
31.55 - return JavaFileHandlerTest.readFile ("props_golden.txt");
31.56 + return JavaFileHandlerTest.readFile("props_golden.txt");
31.57 }
31.58 }
32.1 --- a/licensechanger/test/unit/src/org/netbeans/modules/licensechanger/spi/handlers/XmlFileHandlerTest.java Sun Dec 30 21:11:51 2012 +0100
32.2 +++ b/licensechanger/test/unit/src/org/netbeans/modules/licensechanger/spi/handlers/XmlFileHandlerTest.java Wed Jan 02 13:38:30 2013 +0100
32.3 @@ -36,36 +36,36 @@
32.4 *
32.5 * Portions Copyrighted 2009 Sun Microsystems, Inc.
32.6 */
32.7 -
32.8 package org.netbeans.modules.licensechanger.spi.handlers;
32.9
32.10 import java.util.Collections;
32.11 import java.util.Map;
32.12 import java.util.StringTokenizer;
32.13 import java.util.regex.Matcher;
32.14 +import static org.junit.Assert.*;
32.15 import org.junit.Test;
32.16 import org.netbeans.modules.licensechanger.api.FileHandler;
32.17 -import static org.junit.Assert.*;
32.18
32.19 /**
32.20 *
32.21 * @author Tim Boudreau
32.22 */
32.23 public class XmlFileHandlerTest {
32.24 - private final Map<String,Object> props = Collections.emptyMap();
32.25 -
32.26 +
32.27 + private final Map<String, Object> props = Collections.emptyMap();
32.28 +
32.29 @Test
32.30 public void testDeclarationFinder() throws Exception {
32.31 String xml = getGolden();
32.32 - assertDeclarationFound (xml, "xml_golden.txt");
32.33 - for (int i=1; i <= 8; i++) {
32.34 + assertDeclarationFound(xml, "xml_golden.txt");
32.35 + for (int i = 1; i <= 8; i++) {
32.36 String filename = "xml_" + i + ".txt";
32.37 String content = JavaFileHandlerTest.readFile(filename);
32.38 assertDeclarationFound(content, filename);
32.39 }
32.40 }
32.41
32.42 - private void assertDeclarationFound (String content, String filename) {
32.43 + private void assertDeclarationFound(String content, String filename) {
32.44 String[] lines = FileHandler.splitIntoLines(content);
32.45 boolean found = false;
32.46 for (int i = 0; i < lines.length; i++) {
32.47 @@ -78,7 +78,7 @@
32.48 break;
32.49 }
32.50 }
32.51 - assertTrue ("Did not find xml declaration in " + filename, found);
32.52 + assertTrue("Did not find xml declaration in " + filename, found);
32.53 }
32.54
32.55 @Test
32.56 @@ -86,7 +86,7 @@
32.57 System.out.println("testStuff");
32.58 String golden = getGolden();
32.59 String license = JavaFileHandlerTest.getLicense();
32.60 - for (int i=1; i <= 8; i++) {
32.61 + for (int i = 1; i <= 8; i++) {
32.62 String filename = "xml_" + i + ".txt";
32.63 testOneVersion(golden, license, filename);
32.64 }
32.65 @@ -95,14 +95,14 @@
32.66 private void testOneVersion(String golden, String license, String filename) throws Exception {
32.67 System.out.println("Test " + filename);
32.68 XmlFileHandler instance = new XmlFileHandler();
32.69 - String original = JavaFileHandlerTest.readFile (filename);
32.70 + String original = JavaFileHandlerTest.readFile(filename);
32.71 String processed = instance.transform(original, license, props);
32.72 - assertEqualsLineByLine (golden, processed, filename);
32.73 + assertEqualsLineByLine(golden, processed, filename);
32.74 }
32.75
32.76 - static void assertEqualsLineByLine (String golden, String processed, String filename) {
32.77 - StringTokenizer a = new StringTokenizer (golden, "\n");
32.78 - StringTokenizer b = new StringTokenizer (processed, "\n");
32.79 + static void assertEqualsLineByLine(String golden, String processed, String filename) {
32.80 + StringTokenizer a = new StringTokenizer(golden, "\n");
32.81 + StringTokenizer b = new StringTokenizer(processed, "\n");
32.82 int ix = 0;
32.83 while (a.hasMoreTokens() && b.hasMoreTokens()) {
32.84 String as = a.nextToken();
32.85 @@ -110,13 +110,13 @@
32.86 if (!as.equals(bs)) {
32.87 System.err.println("PROCESSED OUTPUT ");
32.88 }
32.89 - assertEquals ("Difference in " + filename + " at line " + ix + "\n", as, bs);
32.90 + assertEquals("Difference in " + filename + " at line " + ix + "\n", as, bs);
32.91 ix++;
32.92 }
32.93
32.94 }
32.95
32.96 private static String getGolden() throws Exception {
32.97 - return JavaFileHandlerTest.readFile ("xml_golden.txt");
32.98 + return JavaFileHandlerTest.readFile("xml_golden.txt");
32.99 }
32.100 }