japi-cvs Mailing List for JAPI (Page 38)
Status: Beta
Brought to you by:
christianhujer
You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
(115) |
May
(11) |
Jun
(5) |
Jul
(2) |
Aug
(10) |
Sep
(35) |
Oct
(14) |
Nov
(49) |
Dec
(27) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
(57) |
Feb
(1) |
Mar
|
Apr
(2) |
May
(25) |
Jun
(134) |
Jul
(76) |
Aug
(34) |
Sep
(27) |
Oct
(5) |
Nov
|
Dec
(1) |
2008 |
Jan
(3) |
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(63) |
Nov
(30) |
Dec
(43) |
2009 |
Jan
(10) |
Feb
(420) |
Mar
(67) |
Apr
(3) |
May
(61) |
Jun
(21) |
Jul
(19) |
Aug
|
Sep
(6) |
Oct
(16) |
Nov
(1) |
Dec
|
2010 |
Jan
(1) |
Feb
|
Mar
|
Apr
(7) |
May
(3) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
From: <chr...@us...> - 2007-06-30 20:18:49
|
Revision: 485 http://svn.sourceforge.net/japi/?rev=485&view=rev Author: christianhujer Date: 2007-06-30 13:18:47 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Fixed typo. Modified Paths: -------------- libs/argparser/trunk/src/net/sf/japi/io/args/converter/package-info.java Modified: libs/argparser/trunk/src/net/sf/japi/io/args/converter/package-info.java =================================================================== --- libs/argparser/trunk/src/net/sf/japi/io/args/converter/package-info.java 2007-06-30 17:17:38 UTC (rev 484) +++ libs/argparser/trunk/src/net/sf/japi/io/args/converter/package-info.java 2007-06-30 20:18:47 UTC (rev 485) @@ -20,7 +20,7 @@ /** * The Converter package contains classes for automatic argument conversion. * For instance, a Command might simply want to read bytes from an InputStream. - * The Converter package makes will convert the String into an InputStream then. + * The Converter package will convert the String into an InputStream then. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> */ package net.sf.japi.io.args.conveter; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 17:17:39
|
Revision: 484 http://svn.sourceforge.net/japi/?rev=484&view=rev Author: christianhujer Date: 2007-06-30 10:17:38 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added Quality Checklist. Added Paths: ----------- common/trunk/QualityChecklist.txt Added: common/trunk/QualityChecklist.txt =================================================================== --- common/trunk/QualityChecklist.txt (rev 0) +++ common/trunk/QualityChecklist.txt 2007-06-30 17:17:38 UTC (rev 484) @@ -0,0 +1,35 @@ +This checklist serves for a module review. +Such a review must be performed prior to a module release. + +Warnings Quality +[ ] Checkstyle is run using common/trunk/sun_checks.xml and reports no errors. +[ ] Checkstyle is run using common/trunk/sun_checks.xml and reports no warnings. +[ ] IntelliJ IDEA Inspections is run using the project settings and reports no errors. +[ ] IntelliJ IDEA Inspections is run using the project settings and reports no warnings. +[ ] There are no redundant @SuppressWarnings annotations. +[ ] All @SuppressWarnings annotations are reasonable. + Note: Checkstyle can be run using "ant checkstyle". + +NullPointerException Prevention +[ ] All fields are annotated @NotNull / @Nullable +[ ] All reference return types are annotated @NotNull / @Nullable +[ ] All reference parameter types are annotated @NotNull / @Nullable +[ ] IntelliJ IDEA reports no warnings about @NotNull / @Nullable / null issues + +Javadoc Comment Quality +[ ] All members have a javadoc comment, including packages (package-info.java). +[ ] All parameters, returns and exceptions are documented. +[ ] All parameter, return and exception documentation ends in a full stop. +[ ] All javadoc comments have a brief that ends in a full stop. +[ ] All types have at least one @author tag. + +Unit Test Quality +[ ] There is a unit test for every concrete class. +[ ] The unit tests can be run and evaluated with Ant. +[ ] All unit tests are run. The test run does not yield errors. + +General Module Quality +[ ] The regular documentation files are there: CHANGES, COPYING, CREDITS, INSTALL, LICENSE, MAINTAINERS, NEWS, README. +[ ] The regular documentation files properly document this module, not another module. +[ ] The module can be built and packaged with Ant outside an IDE. +[ ] If the module belongs to progs or tools: The module runs after being built. Property changes on: common/trunk/QualityChecklist.txt ___________________________________________________________________ Name: svn:mime-type + text/plain Name: svn:eol-style + LF This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 17:13:53
|
Revision: 483 http://svn.sourceforge.net/japi/?rev=483&view=rev Author: christianhujer Date: 2007-06-30 10:13:52 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing file to dist src include list. Modified Paths: -------------- common/trunk/commonBuild.xml Modified: common/trunk/commonBuild.xml =================================================================== --- common/trunk/commonBuild.xml 2007-06-30 17:12:40 UTC (rev 482) +++ common/trunk/commonBuild.xml 2007-06-30 17:13:52 UTC (rev 483) @@ -124,21 +124,33 @@ <tar tarfile="${distPath}.src.tar"> <tarfileset dir="." prefix="${module.name}-${module.version}"> <include name="src/**" /> - <include name="build.xml,README,INSTALL,COPYING" /> + <include name="common/**" /> + <include name="devlib/**" /> + <include name="lib/**" /> + <include name="*.iml,build.xml,module.properties" /> + <include name="CHANGES,COPYING,CREDITS,INSTALL,LICENSE,MAINTAINERS,NEWS,README" /> <!-- TODO --> </tarfileset> </tar> <zip destfile="${distPath}.src.zip"> <zipfileset dir="." prefix="${module.name}-${module.version}"> <include name="src/**" /> - <include name="build.xml,README,INSTALL,COPYING" /> + <include name="common/**" /> + <include name="devlib/**" /> + <include name="lib/**" /> + <include name="*.iml,build.xml,module.properties" /> + <include name="CHANGES,COPYING,CREDITS,INSTALL,LICENSE,MAINTAINERS,NEWS,README" /> <!-- TODO --> </zipfileset> </zip> <jar destfile="${distPath}.src.jar"> <zipfileset dir="." prefix="${module.name}-${module.version}"> <include name="src/**" /> - <include name="build.xml,README,INSTALL,COPYING" /> + <include name="common/**" /> + <include name="devlib/**" /> + <include name="lib/**" /> + <include name="*.iml,build.xml,module.properties" /> + <include name="CHANGES,COPYING,CREDITS,INSTALL,LICENSE,MAINTAINERS,NEWS,README" /> <!-- TODO --> </zipfileset> </jar> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 17:12:41
|
Revision: 482 http://svn.sourceforge.net/japi/?rev=482&view=rev Author: christianhujer Date: 2007-06-30 10:12:40 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Changed a comment to not be mistaken for an open todo. Modified Paths: -------------- common/trunk/sun_checks.xml Modified: common/trunk/sun_checks.xml =================================================================== --- common/trunk/sun_checks.xml 2007-06-30 17:11:53 UTC (rev 481) +++ common/trunk/sun_checks.xml 2007-06-30 17:12:40 UTC (rev 482) @@ -190,7 +190,7 @@ <property name="format" value="\s+$"/> <property name="message" value="Line has trailing spaces."/> </module> - <!-- Disabled because we use different means of filtering out todo comments. --> + <!-- Disabled because we use different means of filtering out such comments. --> <!--module name="TodoComment"/--> <module name="UpperEll"/> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 17:11:55
|
Revision: 481 http://svn.sourceforge.net/japi/?rev=481&view=rev Author: christianhujer Date: 2007-06-30 10:11:53 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing @NotNull / @Nullable annotations. Modified Paths: -------------- libs/argparser/trunk/src/net/sf/japi/io/args/ArgParser.java Modified: libs/argparser/trunk/src/net/sf/japi/io/args/ArgParser.java =================================================================== --- libs/argparser/trunk/src/net/sf/japi/io/args/ArgParser.java 2007-06-30 16:42:31 UTC (rev 480) +++ libs/argparser/trunk/src/net/sf/japi/io/args/ArgParser.java 2007-06-30 17:11:53 UTC (rev 481) @@ -31,6 +31,8 @@ import java.util.NoSuchElementException; import java.util.Set; import net.sf.japi.io.args.converter.ConverterRegistry; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** * Parser for command line arguments. @@ -42,22 +44,22 @@ public final class ArgParser { /** The command to parse arguments to. */ - private final Command command; + @NotNull private final Command command; /** The command class. */ - private final Class<? extends Command> commandClass; + @NotNull private final Class<? extends Command> commandClass; /** The argument methods. */ - private final Map<String, Method> argumentMethods = new HashMap<String, Method>(); + @NotNull private final Map<String, Method> argumentMethods = new HashMap<String, Method>(); /** The required methods. */ - private final Set<Method> requiredMethods = new HashSet<Method>(); + @NotNull private final Set<Method> requiredMethods = new HashSet<Method>(); /** The iterator for the arguments. */ - private final ListIterator<String> argIterator; + @NotNull private final ListIterator<String> argIterator; /** The currently used option. */ - private String currentOption; + @Nullable private String currentOption; /** * Create a new ArgParser. @@ -69,7 +71,7 @@ * @throws MissingArgumentException in the required argument for an option was missing * @throws UnknownOptionException In case an option was specified that's not supported. */ - private ArgParser(final Command command, final String... args) throws TerminalException, RequiredOptionsMissingException, UnknownOptionException, MissingArgumentException { + private ArgParser(@NotNull final Command command, @NotNull final String... args) throws TerminalException, RequiredOptionsMissingException, UnknownOptionException, MissingArgumentException { this.command = command; commandClass = command.getClass(); initMethods(); @@ -132,7 +134,7 @@ * @param command Command to get option methods for * @return option methods for the command. */ - public static Set<Method> getOptionMethods(final Command command) { + @NotNull public static Set<Method> getOptionMethods(@NotNull final Command command) { return getOptionMethods(command.getClass()); } @@ -141,7 +143,7 @@ * @param commandClass Class of the Command to get option methods for * @return Option methods for the command class. */ - public static Set<Method> getOptionMethods(final Class<? extends Command> commandClass) { + @NotNull public static Set<Method> getOptionMethods(@NotNull final Class<? extends Command> commandClass) { final Method[] methods = commandClass.getMethods(); final Set<Method> optionMethods = new HashSet<Method>(); for (final Method method : methods) { @@ -240,7 +242,7 @@ * @param command Command to run * @param args Arguments to parse */ - public static void simpleParseAndRun(final Command command, final String... args) { + public static void simpleParseAndRun(@NotNull final Command command, @NotNull final String... args) { try { parseAndRun(command, args); } catch (final TerminalException e) { @@ -263,7 +265,7 @@ * @throws UnknownOptionException in case an option given was not known. * @throws MissingArgumentException in case an option was missing its argument */ - public static void parseAndRun(final Command command, final String... args) throws RequiredOptionsMissingException, TerminalException, UnknownOptionException, MissingArgumentException { + public static void parseAndRun(@NotNull final Command command, @NotNull final String... args) throws RequiredOptionsMissingException, TerminalException, UnknownOptionException, MissingArgumentException { new ArgParser(command, args); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 16:42:34
|
Revision: 480 http://svn.sourceforge.net/japi/?rev=480&view=rev Author: christianhujer Date: 2007-06-30 09:42:31 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing @NotNull / @Nullable annotations. Modified Paths: -------------- libs/argparser/trunk/src/net/sf/japi/io/args/BasicCommand.java Modified: libs/argparser/trunk/src/net/sf/japi/io/args/BasicCommand.java =================================================================== --- libs/argparser/trunk/src/net/sf/japi/io/args/BasicCommand.java 2007-06-30 16:34:35 UTC (rev 479) +++ libs/argparser/trunk/src/net/sf/japi/io/args/BasicCommand.java 2007-06-30 16:42:31 UTC (rev 480) @@ -71,7 +71,7 @@ * @see System#exit(int) * @see #setExiting(Boolean) */ - public Boolean isExiting() { + @NotNull public Boolean isExiting() { return exiting; } @@ -136,7 +136,7 @@ * That means overriding this method will not break any default behaviour of BasicCommand. * @return ResourceBundle for default locale. */ - public ResourceBundle getBundle() { + @NotNull public ResourceBundle getBundle() { return ownBundle; } @@ -146,7 +146,7 @@ * The default String for "helpHeader" is the empty String. * @return Help header. */ - public String getHelpHeader() { + @NotNull public String getHelpHeader() { return getString("helpHeader"); } @@ -156,7 +156,7 @@ * The default String for "helpFooter" is the empty String. * @return Help footer. */ - public String getHelpFooter() { + @NotNull public String getHelpFooter() { return getString("helpFooter"); } @@ -170,7 +170,7 @@ * @return String from the ResourceBundles. * @throws MissingResourceException In case all tries for retrieving a value for <var>key</var> failed. */ - private String getString(final String key) throws MissingResourceException { + @NotNull private String getString(@NotNull final String key) throws MissingResourceException { try { return getBundle().getString(key); } catch (final MissingResourceException e) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 16:34:44
|
Revision: 479 http://svn.sourceforge.net/japi/?rev=479&view=rev Author: christianhujer Date: 2007-06-30 09:34:35 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Sort option variants within an option. Modified Paths: -------------- libs/argparser/trunk/src/net/sf/japi/io/args/BasicCommand.java Modified: libs/argparser/trunk/src/net/sf/japi/io/args/BasicCommand.java =================================================================== --- libs/argparser/trunk/src/net/sf/japi/io/args/BasicCommand.java 2007-06-30 16:28:07 UTC (rev 478) +++ libs/argparser/trunk/src/net/sf/japi/io/args/BasicCommand.java 2007-06-30 16:34:35 UTC (rev 479) @@ -28,6 +28,7 @@ import java.util.Set; import java.util.SortedSet; import java.util.TreeSet; +import java.util.Collections; import org.jetbrains.annotations.NotNull; /** @@ -113,6 +114,8 @@ shortNames.add("-" + name); } } + Collections.sort(shortNames); + Collections.sort(longNames); final String delim = shortNames.size() > 0 && longNames.size() > 0 ? ", " : " "; String description; try { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 16:28:09
|
Revision: 478 http://svn.sourceforge.net/japi/?rev=478&view=rev Author: christianhujer Date: 2007-06-30 09:28:07 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Removed historic parts that have been moved to corresponding other modules. Removed Paths: ------------- historic/trunk/src/app/net/sf/japi/io/args/ historic/trunk/src/app/net/sf/japi/swing/prefs/keys/ historic/trunk/src/app/net/sf/japi/swing/prefs/proxy/ historic/trunk/src/app/net/sf/japi/xml/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 16:10:33
|
Revision: 477 http://svn.sourceforge.net/japi/?rev=477&view=rev Author: christianhujer Date: 2007-06-30 09:10:29 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing @NotNull / @Nullable annotations. Introduced constants for magic numbers. Fixed possible NPE in close action. Modified Paths: -------------- libs/swing-tod/trunk/src/net/sf/japi/swing/tod/TipOfTheDayManager.java Modified: libs/swing-tod/trunk/src/net/sf/japi/swing/tod/TipOfTheDayManager.java =================================================================== --- libs/swing-tod/trunk/src/net/sf/japi/swing/tod/TipOfTheDayManager.java 2007-06-30 12:38:58 UTC (rev 476) +++ libs/swing-tod/trunk/src/net/sf/japi/swing/tod/TipOfTheDayManager.java 2007-06-30 16:10:29 UTC (rev 477) @@ -22,10 +22,11 @@ import java.awt.Component; import java.awt.Dimension; import java.awt.Font; +import java.awt.Dialog; import java.io.BufferedReader; +import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; -import java.io.IOException; import java.security.AccessController; import java.security.PrivilegedAction; import java.util.ArrayList; @@ -48,9 +49,10 @@ import javax.swing.KeyStroke; import static javax.swing.SwingConstants.TRAILING; import net.sf.japi.swing.ActionFactory; +import static net.sf.japi.swing.ActionFactory.ACCELERATOR_KEY_2; import net.sf.japi.swing.ActionMethod; -import static net.sf.japi.swing.ActionFactory.ACCELERATOR_KEY_2; import static net.sf.japi.swing.IconManager.getDefaultIconManager; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; /** Class that manages tips of the day. @@ -81,37 +83,46 @@ public final class TipOfTheDayManager extends JOptionPane { /** Action Factory. */ - private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.swing.tod"); + @NotNull private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.swing.tod"); /** Random number generator for random tods. */ - private static final Random RND = new Random(); + @NotNull private static final Random RND = new Random(); /** Preferences. */ - private static final Preferences PREFS = userNodeForPackage(TipOfTheDayManager.class); + @NotNull private static final Preferences PREFS = userNodeForPackage(TipOfTheDayManager.class); /** The Action keys used for accelerators. */ - private static final String[] ACCELERATOR_KEYS = new String[] { ACCELERATOR_KEY, ACCELERATOR_KEY_2 }; + @NotNull private static final String[] ACCELERATOR_KEYS = new String[] { ACCELERATOR_KEY, ACCELERATOR_KEY_2 }; /** The static instance. */ - private static final TipOfTheDayManager INSTANCE = new TipOfTheDayManager(); + @NotNull private static final TipOfTheDayManager INSTANCE = new TipOfTheDayManager(); + /** Width of the scroll region. */ + private static final int SCROLLER_WIDTH = 512; + + /** Height of the scroll region. */ + private static final int SCROLLER_HEIGHT = 128; + + /** Scale of the heading font. */ + private static final double HEADING_SCALE = 1.5; + /** JButton for close. */ - private JButton closeButton; + @NotNull private JButton closeButton; /** JDialog. */ - private JDialog dialog; + @Nullable private JDialog dialog; /** JCheckBox for showing at startup. */ - private JCheckBox showAtStartup = new JCheckBox(ACTION_FACTORY.createAction(false, "todShowAtStartup", null)); + @NotNull private JCheckBox showAtStartup = new JCheckBox(ACTION_FACTORY.createAction(false, "todShowAtStartup", null)); /** The JLabel showing the current number of the tod. */ - private JLabel currentTodIndex = new JLabel(); + @NotNull private JLabel currentTodIndex = new JLabel(); /** The JEditorPane displaying the tod text. */ - private JEditorPane todText = new JEditorPane("text/html", ""); + @NotNull private JEditorPane todText = new JEditorPane("text/html", ""); /** List with tod texts. */ - private List<String> todTexts = new ArrayList<String>(); + @NotNull private List<String> todTexts = new ArrayList<String>(); /** Number of current Tip of the day. * In visible state, the index must range between 0 and the number of tods available - 1, inclusive. @@ -123,7 +134,7 @@ * If the user chose not to see TipOfTheDays this method simply returns. * @param parentComponent the parent component of this dialog. */ - public static void showAtStartup(final Component parentComponent) { + public static void showAtStartup(@Nullable final Component parentComponent) { if (PREFS.getBoolean("showTipOfTheDayAtStartup", true)) { show(parentComponent); } @@ -132,7 +143,7 @@ /** Show a Tip Of The Day. * @param parentComponent the parent component of this dialog. */ - public static void show(final Component parentComponent) { + public static void show(@Nullable final Component parentComponent) { if (INSTANCE.dialog == null) { INSTANCE.dialog = INSTANCE.createDialog(parentComponent, ACTION_FACTORY.getString("tipOfTheDay.windowTitle")); } @@ -146,7 +157,7 @@ /** Finds the bundle name. * @return bundle name */ - private static String getBundleName() { + @Nullable private static String getBundleName() { String bundleName = System.getProperty("net.sf.japi.swing.tod"); if (bundleName == null) { bundleName = getServiceValue(getClassLoader()); @@ -158,7 +169,7 @@ * @param classLoader ClassLoader, may not be <code>null</code>. * @return first line of resource, or <code>null</code> */ - @Nullable private static String getServiceValue(final ClassLoader classLoader) { + @Nullable private static String getServiceValue(@Nullable final ClassLoader classLoader) { final String serviceId = "META-INF/services/net.sf.japi.swing.tod"; final InputStream in = getResourceAsStream(classLoader, serviceId); if (in != null) { @@ -181,7 +192,7 @@ * @param serviceId service file to get stream from * @return stream for resource <var>serviceId</var> in <var>classLoader</var> */ - private static InputStream getResourceAsStream(final ClassLoader classLoader, final String serviceId) { + @Nullable private static InputStream getResourceAsStream(@Nullable final ClassLoader classLoader, @NotNull final String serviceId) { return AccessController.doPrivileged(new PrivilegedAction<InputStream>() { /** {@inheritDoc} */ @@ -197,7 +208,7 @@ /** Get the ClassLoader. * @return ClassLoader */ - private static ClassLoader getClassLoader() { + @Nullable private static ClassLoader getClassLoader() { try { final ClassLoader contextClassLoader = getContextClassLoader(); if (contextClassLoader != null) { @@ -212,7 +223,7 @@ /** Get the context ClassLoader. * @return context ClassLoader */ - private static ClassLoader getContextClassLoader() { + @Nullable private static ClassLoader getContextClassLoader() { return AccessController.doPrivileged(new PrivilegedAction<ClassLoader>() { /** {@inheritDoc} */ @@ -246,7 +257,7 @@ } } } - final Dimension size = new Dimension(512, 128); + final Dimension size = new Dimension(SCROLLER_WIDTH, SCROLLER_HEIGHT); showAtStartup.setSelected(PREFS.getBoolean("showTipOfTheDayAtStartup", true)); final JScrollPane todTextScroller = new JScrollPane(todText); todTextScroller.setMinimumSize(size); @@ -261,7 +272,7 @@ setIcon(getDefaultIconManager().getIcon(ACTION_FACTORY.getString("tipOfTheDay.icon"))); final JLabel heading = new JLabel(ACTION_FACTORY.getString("todHeading")); final Font oldFont = heading.getFont(); - heading.setFont(oldFont.deriveFont((float) (oldFont.getSize2D() * 1.5))); + heading.setFont(oldFont.deriveFont((float) (oldFont.getSize2D() * HEADING_SCALE))); setMessage(new Object[] { heading, todTextScroller, currentTodIndex, showAtStartup }); setMessageType(INFORMATION_MESSAGE); setOptions(newOptions); @@ -306,9 +317,12 @@ setValue(closeButton); PREFS.putBoolean("showTipOfTheDayAtStartup", showAtStartup.isSelected()); PREFS.putInt("lastTipOfTheDayNumber", todIndex); - dialog.setVisible(false); - dialog.dispose(); - dialog = null; + final Dialog dialog = this.dialog; + if (dialog != null) { + dialog.setVisible(false); + dialog.dispose(); + this.dialog = null; + } } /** Action method for next. */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 12:39:00
|
Revision: 476 http://svn.sourceforge.net/japi/?rev=476&view=rev Author: christianhujer Date: 2007-06-30 05:38:58 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Improved I/O code. Added missing @ActionMethod annotations. Modified Paths: -------------- libs/swing-tod/trunk/src/net/sf/japi/swing/tod/TipOfTheDayManager.java Modified: libs/swing-tod/trunk/src/net/sf/japi/swing/tod/TipOfTheDayManager.java =================================================================== --- libs/swing-tod/trunk/src/net/sf/japi/swing/tod/TipOfTheDayManager.java 2007-06-30 12:20:08 UTC (rev 475) +++ libs/swing-tod/trunk/src/net/sf/japi/swing/tod/TipOfTheDayManager.java 2007-06-30 12:38:58 UTC (rev 476) @@ -22,6 +22,12 @@ import java.awt.Component; import java.awt.Dimension; import java.awt.Font; +import java.io.BufferedReader; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.IOException; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.ArrayList; import java.util.List; import java.util.MissingResourceException; @@ -30,12 +36,6 @@ import static java.util.ResourceBundle.getBundle; import java.util.prefs.Preferences; import static java.util.prefs.Preferences.userNodeForPackage; -import java.io.InputStream; -import java.io.BufferedReader; -import java.io.InputStreamReader; -import java.io.UnsupportedEncodingException; -import java.security.PrivilegedAction; -import java.security.AccessController; import javax.swing.Action; import static javax.swing.Action.ACCELERATOR_KEY; import javax.swing.JButton; @@ -47,10 +47,11 @@ import javax.swing.JScrollPane; import javax.swing.KeyStroke; import static javax.swing.SwingConstants.TRAILING; -import org.jetbrains.annotations.Nullable; +import net.sf.japi.swing.ActionFactory; +import net.sf.japi.swing.ActionMethod; import static net.sf.japi.swing.ActionFactory.ACCELERATOR_KEY_2; import static net.sf.japi.swing.IconManager.getDefaultIconManager; -import net.sf.japi.swing.ActionFactory; +import org.jetbrains.annotations.Nullable; /** Class that manages tips of the day. * The tips of the day are read from a property file. @@ -158,22 +159,19 @@ * @return first line of resource, or <code>null</code> */ @Nullable private static String getServiceValue(final ClassLoader classLoader) { - BufferedReader rd = null; - try { - final String serviceId = "META-INF/services/net.sf.japi.swing.tod"; - final InputStream in = getResourceAsStream(classLoader, serviceId); - if (in != null) { + final String serviceId = "META-INF/services/net.sf.japi.swing.tod"; + final InputStream in = getResourceAsStream(classLoader, serviceId); + if (in != null) { + try { + final BufferedReader rd = new BufferedReader(new InputStreamReader(in, "UTF-8")); try { - rd = new BufferedReader(new InputStreamReader(in, "UTF-8")); - } catch (final UnsupportedEncodingException e) { - rd = new BufferedReader(new InputStreamReader(in)); + return rd.readLine(); + } finally { + rd.close(); } - return rd.readLine(); + } catch (final IOException ignore) { + /* ignore. */ } - } catch (final Exception e) { - /* ignore. */ - } finally { - try { rd.close(); } catch (final Exception e) { /* ignore */ } finally { rd = null; } } return null; } @@ -304,7 +302,7 @@ } /** Action method for close. */ - public void todClose() { + @ActionMethod public void todClose() { setValue(closeButton); PREFS.putBoolean("showTipOfTheDayAtStartup", showAtStartup.isSelected()); PREFS.putInt("lastTipOfTheDayNumber", todIndex); @@ -314,17 +312,17 @@ } /** Action method for next. */ - public void todNext() { + @ActionMethod public void todNext() { setTodIndex(todIndex + 1); } /** Action method for previous. */ - public void todPrev() { + @ActionMethod public void todPrev() { setTodIndex(todIndex - 1); } /** Action method for random. */ - public void todRand() { + @ActionMethod public void todRand() { setTodIndex(RND.nextInt(todTexts.size())); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 12:20:10
|
Revision: 475 http://svn.sourceforge.net/japi/?rev=475&view=rev Author: christianhujer Date: 2007-06-30 05:20:08 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing @Nullable / @NotNull annotations. Added missing @Override annotations. Added missing final modifiers. Added missing Javadoc comments. Fixed possible NPE in URLEncodeCodec. Modified Paths: -------------- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/AbstractStringCodec.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecListModel.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecSelectionPanel.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecStep.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecStepsListModel.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/DoubleListController.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/EntityCodec.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/IdentityCodec.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/JavaBytesCodec.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/ListOrderController.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/String2Bytes.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/StringCodec.java tools/string2bytes/trunk/src/net/sf/japi/string2bytes/URLEncodeCodec.java Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/AbstractStringCodec.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/AbstractStringCodec.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/AbstractStringCodec.java 2007-06-30 12:20:08 UTC (rev 475) @@ -33,7 +33,7 @@ } /** {@inheritDoc} */ - public String toString() { + @Override @Nullable public String toString() { return getDisplayName(); } Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecListModel.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecListModel.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecListModel.java 2007-06-30 12:20:08 UTC (rev 475) @@ -21,6 +21,7 @@ import javax.swing.ListModel; import javax.swing.event.ListDataListener; +import org.jetbrains.annotations.NotNull; /** * ListModel for codecs. @@ -35,17 +36,17 @@ } /** {@inheritDoc} */ - public Object getElementAt(final int i) { + @NotNull public Object getElementAt(final int i) { return StringCodec.ALL_CODECS.get(i); } /** {@inheritDoc} */ - public void addListDataListener(final ListDataListener listDataListener) { + public void addListDataListener(@NotNull final ListDataListener listDataListener) { // Because we don't fire events, we ignore listeners. } /** {@inheritDoc} */ - public void removeListDataListener(final ListDataListener listDataListener) { + public void removeListDataListener(@NotNull final ListDataListener listDataListener) { // Because we don't fire events, we ignore listeners. } Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecSelectionPanel.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecSelectionPanel.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecSelectionPanel.java 2007-06-30 12:20:08 UTC (rev 475) @@ -39,13 +39,13 @@ public class CodecSelectionPanel extends JPanel implements ListSelectionListener { /** Action Factory. */ - private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.string2bytes"); + @NotNull private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.string2bytes"); /** The list with the available codecs. */ - private JList availableCodecsList = new JList(new CodecListModel()); + @NotNull private JList availableCodecsList = new JList(new CodecListModel()); /** The list with the configured codec steps. */ - private JList configuredCodecSteps = new JList(new CodecStepsListModel()); + @NotNull private JList configuredCodecSteps = new JList(new CodecStepsListModel()); /** * Creates a CodecSelectionPanel. @@ -78,8 +78,8 @@ * Main method, used to try the CodecSelectionPanel. * @param args Command line arguments (ignored) */ - public static void main(final String... args) { - JFrame f = new JFrame(); + public static void main(@NotNull final String... args) { + final JFrame f = new JFrame(); f.add(new CodecSelectionPanel()); f.pack(); f.setVisible(true); Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecStep.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecStep.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecStep.java 2007-06-30 12:20:08 UTC (rev 475) @@ -76,7 +76,7 @@ } /** {@inheritDoc} */ - public String toString() { + @Override @NotNull public String toString() { return codec + " [" + getCharset() + "]"; } Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecStepsListModel.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecStepsListModel.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/CodecStepsListModel.java 2007-06-30 12:20:08 UTC (rev 475) @@ -22,6 +22,7 @@ import javax.swing.ListModel; import javax.swing.JList; import javax.swing.DefaultListModel; +import org.jetbrains.annotations.NotNull; /** * The CodecStepsListModel is a {@link ListModel} for listing {@link CodecStep}s in a {@link JList}. @@ -30,7 +31,7 @@ public class CodecStepsListModel extends DefaultListModel { /** {@inheritDoc} */ - @Override public void insertElementAt(final Object object, final int i) { + @Override public void insertElementAt(@NotNull final Object object, final int i) { if (!(object instanceof StringCodec)) { throw new IllegalArgumentException(object + " not instanceof " + StringCodec.class); } Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/DoubleListController.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/DoubleListController.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/DoubleListController.java 2007-06-30 12:20:08 UTC (rev 475) @@ -40,12 +40,13 @@ * Elements from the second list can be removed from the second list based on the selection made in the second list. * The first list, which is not modified by this controller, is called source list. * The second list, which can be modified by this controller, is called target list. + * @todo move to an appropriate JAPI swing library module. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> */ public class DoubleListController extends JComponent implements ListSelectionListener { /** Action Factory. */ - private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.string2bytes"); + @NotNull private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.string2bytes"); /** * The first list (source list) to operate on. Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/EntityCodec.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/EntityCodec.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/EntityCodec.java 2007-06-30 12:20:08 UTC (rev 475) @@ -43,6 +43,7 @@ if (encoder.canEncode(c)) { cooked.append(c); } else { + //noinspection MagicNumber format.format("&%x;", c & 0xFFFF); } } @@ -50,7 +51,7 @@ } /** {@inheritDoc} */ - @Nullable public String getDisplayName() { + @Override @Nullable public String getDisplayName() { return "XML entities"; } Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/IdentityCodec.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/IdentityCodec.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/IdentityCodec.java 2007-06-30 12:20:08 UTC (rev 475) @@ -35,7 +35,7 @@ } /** {@inheritDoc} */ - @Nullable public String getDisplayName() { + @Override @Nullable public String getDisplayName() { return "Identity"; } Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/JavaBytesCodec.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/JavaBytesCodec.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/JavaBytesCodec.java 2007-06-30 12:20:08 UTC (rev 475) @@ -47,7 +47,7 @@ } /** {@inheritDoc} */ - @Nullable public String getDisplayName() { + @Override @Nullable public String getDisplayName() { return "Java Bytes"; } Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/ListOrderController.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/ListOrderController.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/ListOrderController.java 2007-06-30 12:20:08 UTC (rev 475) @@ -37,12 +37,13 @@ /** * A Control for changing the order of items in a {@link JList}. + * @todo move to an appropriate JAPI swing library module. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> */ public class ListOrderController extends JComponent implements ListSelectionListener { /** Action Factory. */ - private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.string2bytes"); + @NotNull private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.string2bytes"); /** * The JList to operate on. Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/String2Bytes.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/String2Bytes.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/String2Bytes.java 2007-06-30 12:20:08 UTC (rev 475) @@ -39,6 +39,7 @@ import net.sf.japi.swing.ActionMethod; import net.sf.japi.swing.ToggleAction; import net.sf.japi.swing.about.AboutDialog; +import org.jetbrains.annotations.NotNull; /** * String2Bytes is a small tool that converts Strings into Bytes. @@ -54,22 +55,22 @@ public class String2Bytes implements ItemListener { /** Action Factory. */ - private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.string2bytes"); + @NotNull private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.string2bytes"); /** About Dialog. */ - private final AboutDialog aboutDialog = new AboutDialog("net.sf.japi.string2bytes"); + @NotNull private final AboutDialog aboutDialog = new AboutDialog("net.sf.japi.string2bytes"); /** Preferences. */ - private static final Preferences PREFS = Preferences.userNodeForPackage(String2Bytes.class); + @NotNull private static final Preferences PREFS = Preferences.userNodeForPackage(String2Bytes.class); /** Textfield for the input String. */ - private final JTextArea input = new JTextArea(); + @NotNull private final JTextArea input = new JTextArea(); /** Textfield for the output String. */ - private final JTextArea output = new JTextArea(); + @NotNull private final JTextArea output = new JTextArea(); /** ComboBox for selecting the encoding. */ - private final JComboBox encoding = new JComboBox(Charset.availableCharsets().keySet().toArray()); + @NotNull private final JComboBox encoding = new JComboBox(Charset.availableCharsets().keySet().toArray()); /** Whether the Clipboard is used for input. */ private boolean usingClipboardForInput; @@ -78,7 +79,7 @@ private boolean usingClipboardForOutput; /** The application frame. */ - private final JFrame frame; + @NotNull private final JFrame frame; String2Bytes() { ACTION_FACTORY.createActions(true, this, "convert", "encodingDefault", "encodingSystem", "clearInput", "clearOutput"); @@ -141,7 +142,7 @@ * @return Converted String * @throws UnsupportedEncodingException in case the selected encoding is not available (shouldn't happen). */ - public String convert(final String from) throws Exception { + @NotNull public String convert(@NotNull final String from) throws Exception { return new JavaBytesCodec().code(from, encoding.getSelectedItem().toString()); } @@ -185,7 +186,7 @@ * Creates the panel which holds the settings. * @return Newly created panel which holds the settings. */ - private JPanel createSettingsPanel() { + @NotNull private JPanel createSettingsPanel() { final JPanel settingsPanel = new JPanel(); settingsPanel.setBorder(BorderFactory.createTitledBorder("Settings")); settingsPanel.add(createEncodingPanel()); @@ -196,7 +197,7 @@ * Creates the panel which allows the user to select the encoding. * @return Newly created panel for selecting the encoding. */ - private JPanel createEncodingPanel() { + @NotNull private JPanel createEncodingPanel() { encoding.setSelectedItem(PREFS.get("encoding", ACTION_FACTORY.getString("encoding.default"))); encoding.setEditable(true); final JPanel encodingPanel = new JPanel(); @@ -211,7 +212,7 @@ * Creates the input panel. * @return Newly created input panel. */ - private JPanel createInputPanel() { + @NotNull private JPanel createInputPanel() { final JPanel inputPanel = new JPanel(new GridBagLayout()); inputPanel.setBorder(BorderFactory.createTitledBorder(ACTION_FACTORY.getString("border.input.title"))); final GridBagConstraints gbc = new GridBagConstraints(); @@ -233,7 +234,7 @@ * Creates the output panel. * @return Newly created output panel. */ - private JPanel createOutputPanel() { + @NotNull private JPanel createOutputPanel() { final JPanel outputPanel = new JPanel(new GridBagLayout()); outputPanel.setBorder(BorderFactory.createTitledBorder(ACTION_FACTORY.getString("border.output.title"))); final GridBagConstraints gbc = new GridBagConstraints(); @@ -255,7 +256,7 @@ * Creates the command panel which holds the button to perform the conversion. * @return Newly created command panel. */ - private JPanel createCommandPanel() { + @NotNull private JPanel createCommandPanel() { final JPanel commandPanel = new JPanel(); commandPanel.setBorder(BorderFactory.createTitledBorder("Commands")); commandPanel.add(new JButton(ACTION_FACTORY.getAction("convert"))); @@ -263,7 +264,7 @@ } /** {@inheritDoc} */ - public void itemStateChanged(final ItemEvent itemEvent) { + public void itemStateChanged(@NotNull final ItemEvent itemEvent) { if (itemEvent.getStateChange() == ItemEvent.SELECTED) { PREFS.put("encoding", encoding.getSelectedItem().toString()); } @@ -273,7 +274,7 @@ * Main program. * @param args Command line arguments (ignored) */ - public static void main(final String... args) { + public static void main(@NotNull final String... args) { new String2Bytes(); } Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/StringCodec.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/StringCodec.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/StringCodec.java 2007-06-30 12:20:08 UTC (rev 475) @@ -36,7 +36,7 @@ * Unmodifiable list with all Codecs. * @deprecated This will be replaced using a registry. */ - @Deprecated List<? extends StringCodec> ALL_CODECS = Collections.unmodifiableList(Arrays.asList(new IdentityCodec(), new JavaBytesCodec(), new EntityCodec(), new URLEncodeCodec())); + @Deprecated @NotNull List<? extends StringCodec> ALL_CODECS = Collections.unmodifiableList(Arrays.asList(new IdentityCodec(), new JavaBytesCodec(), new EntityCodec(), new URLEncodeCodec())); /** * Convert a String into another String. Modified: tools/string2bytes/trunk/src/net/sf/japi/string2bytes/URLEncodeCodec.java =================================================================== --- tools/string2bytes/trunk/src/net/sf/japi/string2bytes/URLEncodeCodec.java 2007-06-30 12:04:18 UTC (rev 474) +++ tools/string2bytes/trunk/src/net/sf/japi/string2bytes/URLEncodeCodec.java 2007-06-30 12:20:08 UTC (rev 475) @@ -32,12 +32,12 @@ public class URLEncodeCodec extends AbstractStringCodec { /** {@inheritDoc} */ - @NotNull public String code(@NotNull final String input, final String charsetName) throws UnsupportedEncodingException { - return URLEncoder.encode(input, charsetName); + @NotNull public String code(@NotNull final String input, @Nullable final String charsetName) throws UnsupportedEncodingException { + return charsetName == null ? URLEncoder.encode(input) : URLEncoder.encode(input, charsetName); } /** {@inheritDoc} */ - @Nullable public String getDisplayName() { + @Override @Nullable public String getDisplayName() { return "URLEncode"; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 12:04:19
|
Revision: 474 http://svn.sourceforge.net/japi/?rev=474&view=rev Author: christianhujer Date: 2007-06-30 05:04:18 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Changed package documentation to be package-info.java instead of package.html. Added missing @Nullable / @NotNull annotations. Added missing Javadoc comments. Added missing module dependencies. Modified Paths: -------------- tools/prefsbrowser/trunk/prefsbrowser.iml tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsBranchNode.java tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsBrowser.java tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsLeafNode.java tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsRootNode.java tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsTreeNode.java tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsTreeTableModel.java Added Paths: ----------- tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/package-info.java Removed Paths: ------------- tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/package.html Modified: tools/prefsbrowser/trunk/prefsbrowser.iml =================================================================== --- tools/prefsbrowser/trunk/prefsbrowser.iml 2007-06-30 11:52:00 UTC (rev 473) +++ tools/prefsbrowser/trunk/prefsbrowser.iml 2007-06-30 12:04:18 UTC (rev 474) @@ -26,6 +26,8 @@ <SOURCES /> </library> </orderEntry> + <orderEntry type="module" module-name="libs-swing-action" /> + <orderEntry type="module" module-name="libs-swing-treetable" /> <orderEntryProperties /> </component> <component name="copyright"> Modified: tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsBranchNode.java =================================================================== --- tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsBranchNode.java 2007-06-30 11:52:00 UTC (rev 473) +++ tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsBranchNode.java 2007-06-30 12:04:18 UTC (rev 474) @@ -24,6 +24,7 @@ import java.util.prefs.BackingStoreException; import java.util.List; import java.util.ArrayList; +import org.jetbrains.annotations.NotNull; /** Node describing a branch in preferences. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> @@ -31,19 +32,19 @@ public class PrefsBranchNode implements PrefsTreeNode { /** The preferences of this branch node. */ - private final Preferences prefs; + @NotNull private final Preferences prefs; /** The Children. */ - private List<PrefsTreeNode> children = new ArrayList<PrefsTreeNode>(); + @NotNull private List<PrefsTreeNode> children = new ArrayList<PrefsTreeNode>(); /** Name. */ - private String name; + @NotNull private String name; /** Create a PrefsLeafNode. * @param prefs Preferences to create leaf branch for * @param name Name */ - public PrefsBranchNode(final Preferences prefs, final String name) { + public PrefsBranchNode(@NotNull final Preferences prefs, @NotNull final String name) { this.prefs = prefs; this.name = name; initChildren(); @@ -52,11 +53,12 @@ /** Create a PrefsLeafNode. * @param prefs Preferences to create leaf branch for */ - public PrefsBranchNode(final Preferences prefs) { + public PrefsBranchNode(@NotNull final Preferences prefs) { this.prefs = prefs; initChildren(); } + /** Initializes the children of this PrefsBranchNode. */ private void initChildren() { children.clear(); try { @@ -76,7 +78,7 @@ } /** {@inheritDoc} */ - public Object getValueAt(final int column) { + @NotNull public Object getValueAt(final int column) { switch (column) { case 0: return prefs.name(); case 1: return ""; @@ -85,7 +87,7 @@ } /** {@inheritDoc} */ - public PrefsTreeNode getChild(final int index) { + @NotNull public PrefsTreeNode getChild(final int index) { return children.get(index); } @@ -95,7 +97,7 @@ } /** {@inheritDoc} */ - @Override public String toString() { + @Override @NotNull public String toString() { return name != null ? name : prefs.name(); } Modified: tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsBrowser.java =================================================================== --- tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsBrowser.java 2007-06-30 11:52:00 UTC (rev 473) +++ tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsBrowser.java 2007-06-30 12:04:18 UTC (rev 474) @@ -26,6 +26,7 @@ import static javax.swing.WindowConstants.DISPOSE_ON_CLOSE; import net.sf.japi.swing.ActionFactory; import net.sf.japi.swing.treetable.JTreeTable; +import org.jetbrains.annotations.NotNull; /** Main class of PrefsBrowser. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> @@ -35,12 +36,12 @@ public class PrefsBrowser { /** Action Factory. */ - private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.tools.prefsbrowser"); + @NotNull private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.tools.prefsbrowser"); /** Main program. * @param args command line arguments */ - public static void main(final String... args) { + public static void main(@NotNull final String... args) { // XXX this class isn't really a Utility class, it just looks like one. //noinspection ResultOfObjectAllocationIgnored,InstantiationOfUtilityClass new PrefsBrowser(); Modified: tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsLeafNode.java =================================================================== --- tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsLeafNode.java 2007-06-30 11:52:00 UTC (rev 473) +++ tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsLeafNode.java 2007-06-30 12:04:18 UTC (rev 474) @@ -20,6 +20,7 @@ package net.sf.japi.tools.prefsbrowser; import java.util.prefs.Preferences; +import org.jetbrains.annotations.NotNull; /** Node describing a leaf in preferences (key / value pair). * @author <a href="mailto:ch...@ri...">Christian Hujer</a> @@ -27,22 +28,22 @@ public class PrefsLeafNode implements PrefsTreeNode { /** The preferences of this leaf node. */ - private final Preferences prefs; + @NotNull private final Preferences prefs; /** The key of this leaf node. */ - private final String key; + @NotNull private final String key; /** Create a PrefsLeafNode. * @param prefs Preferences to create leaf node for * @param key Key to create leaf node for */ - public PrefsLeafNode(final Preferences prefs, final String key) { + public PrefsLeafNode(@NotNull final Preferences prefs, @NotNull final String key) { this.prefs = prefs; this.key = key; } /** {@inheritDoc} */ - public Object getValueAt(final int column) { + @NotNull public Object getValueAt(final int column) { switch (column) { case 0: return key; case 1: return prefs.get(key, ""); @@ -51,7 +52,7 @@ } /** {@inheritDoc} */ - public PrefsTreeNode getChild(final int index) { + @NotNull public PrefsTreeNode getChild(final int index) { throw new IllegalStateException(); } @@ -61,7 +62,7 @@ } /** {@inheritDoc} */ - @Override public String toString() { + @Override @NotNull public String toString() { return key; } Modified: tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsRootNode.java =================================================================== --- tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsRootNode.java 2007-06-30 11:52:00 UTC (rev 473) +++ tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsRootNode.java 2007-06-30 12:04:18 UTC (rev 474) @@ -21,6 +21,7 @@ package net.sf.japi.tools.prefsbrowser; import java.util.prefs.Preferences; +import org.jetbrains.annotations.NotNull; /** Node describing the root of preferences. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> @@ -28,10 +29,10 @@ public class PrefsRootNode implements PrefsTreeNode { /** Branch node for system root of preferences. */ - private PrefsBranchNode systemRoot; + @NotNull private PrefsBranchNode systemRoot; /** Branch node for user root of preferences. */ - private PrefsBranchNode userRoot; + @NotNull private PrefsBranchNode userRoot; /** Create a root node for preferences. */ public PrefsRootNode() { @@ -40,12 +41,12 @@ } /** {@inheritDoc} */ - public Object getValueAt(final int column) { + @NotNull public Object getValueAt(final int column) { return ""; } /** {@inheritDoc} */ - public PrefsTreeNode getChild(final int index) { + @NotNull public PrefsTreeNode getChild(final int index) { switch (index) { case 0: return systemRoot; case 1: return userRoot; @@ -59,7 +60,7 @@ } /** {@inheritDoc} */ - @Override public String toString() { + @Override @NotNull public String toString() { return ""; } Modified: tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsTreeNode.java =================================================================== --- tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsTreeNode.java 2007-06-30 11:52:00 UTC (rev 473) +++ tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsTreeNode.java 2007-06-30 12:04:18 UTC (rev 474) @@ -20,6 +20,8 @@ package net.sf.japi.tools.prefsbrowser; +import org.jetbrains.annotations.NotNull; + /** Superclass of PrefsTreeNode. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> */ @@ -29,13 +31,13 @@ * @param column Column to get value for * @return value for column */ - Object getValueAt(int column); + @NotNull Object getValueAt(int column); /** Get a child with a specific index. * @param index Index of child to get (<code>0 <= <var>index</var> < {@link #getChildCount()}</code>) * @return child node */ - PrefsTreeNode getChild(int index); + @NotNull PrefsTreeNode getChild(int index); /** Get the number of children. * @return number of children Modified: tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsTreeTableModel.java =================================================================== --- tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsTreeTableModel.java 2007-06-30 11:52:00 UTC (rev 473) +++ tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/PrefsTreeTableModel.java 2007-06-30 12:04:18 UTC (rev 474) @@ -23,6 +23,7 @@ import net.sf.japi.swing.treetable.AbstractTreeTableModel; import net.sf.japi.swing.treetable.TreeTableModel; import net.sf.japi.swing.ActionFactory; +import org.jetbrains.annotations.NotNull; /** TreeTableModel for displaying preferences. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> @@ -30,7 +31,7 @@ public class PrefsTreeTableModel extends AbstractTreeTableModel<PrefsRootNode, PrefsTreeNode> { /** Action Factory. */ - private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.tools.prefsbrowser"); + @NotNull private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.tools.prefsbrowser"); /** Create an AbstractTreeTableModel. */ @@ -39,17 +40,17 @@ } /** {@inheritDoc} */ - public PrefsTreeNode getChild(final PrefsTreeNode parent, final int index) { + @NotNull public PrefsTreeNode getChild(@NotNull final PrefsTreeNode parent, final int index) { return parent.getChild(index); } /** {@inheritDoc} */ - public int getChildCount(final PrefsTreeNode node) { + public int getChildCount(@NotNull final PrefsTreeNode node) { return node.getChildCount(); } /** {@inheritDoc} */ - @Override public Class<?> getColumnClass(final int column) { + @NotNull @Override public Class<?> getColumnClass(final int column) { return column == 0 ? TreeTableModel.class : String.class; } @@ -68,12 +69,12 @@ } /** {@inheritDoc} */ - public Object getValueAt(final PrefsTreeNode node, final int column) { + @NotNull public Object getValueAt(@NotNull final PrefsTreeNode node, final int column) { return node.getValueAt(column); } /** {@inheritDoc} */ - @Override public boolean isLeaf(final PrefsTreeNode node) { + @Override public boolean isLeaf(@NotNull final PrefsTreeNode node) { return node instanceof PrefsLeafNode; } Added: tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/package-info.java =================================================================== --- tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/package-info.java (rev 0) +++ tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/package-info.java 2007-06-30 12:04:18 UTC (rev 474) @@ -0,0 +1,28 @@ +/* + * PrefsBrowser is a tool for browsing preferences in a GUI. + * Copyright (C) 2007 Christian Hujer + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +/** + * This package contains a preferences browser that allows browsing Java preferences. + * @see java.util.prefs + * @todo Add a menu. + * @todo Add a toolbar. + * @todo Allow editing of preferences. + * @todo Implement hot update of preferences (listen to changes). + */ +package net.sf.japi.tools.prefsbrowser; Property changes on: tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/package-info.java ___________________________________________________________________ Name: svn:mime-type + text/plain Name: svn:eol-style + LF Deleted: tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/package.html =================================================================== --- tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/package.html 2007-06-30 11:52:00 UTC (rev 473) +++ tools/prefsbrowser/trunk/src/net/sf/japi/tools/prefsbrowser/package.html 2007-06-30 12:04:18 UTC (rev 474) @@ -1,33 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- JAPI - (Yet another (hopefully) useful) Java API - - - - Copyright (C) 2006 Christian Hujer - - - - This program is free software; you can redistribute it and/or - - modify it under the terms of the GNU General Public License as - - published by the Free Software Foundation; either version 2 of the - - License, or (at your option) any later version. - - - - This program is distributed in the hope that it will be useful, but - - WITHOUT ANY WARRANTY; without even the implied warranty of - - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - - General Public License for more details. - - - - You should have received a copy of the GNU General Public License - - along with this program; if not, write to the Free Software - - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - - 02111-1307, USA. - --> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de"> - <head> - <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" /> - <meta name="Date" content="$Date$" /> - <title>net.sf.japi.tools.prefsbrowser</title> - </head> - <body> - <p> - Contains a full featured preferences browser. - </p> - </body> -</html> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 11:52:01
|
Revision: 473 http://svn.sourceforge.net/japi/?rev=473&view=rev Author: christianhujer Date: 2007-06-30 04:52:00 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing @Nullable / @NotNull annotations. Added missing Javadoc comments. Added missing @Override annotation. Added missing final modifier. Modified Paths: -------------- tools/findLongestPath/trunk/src/net/sf/japi/findLongestPath/FindLongestPath.java Modified: tools/findLongestPath/trunk/src/net/sf/japi/findLongestPath/FindLongestPath.java =================================================================== --- tools/findLongestPath/trunk/src/net/sf/japi/findLongestPath/FindLongestPath.java 2007-06-30 11:46:40 UTC (rev 472) +++ tools/findLongestPath/trunk/src/net/sf/japi/findLongestPath/FindLongestPath.java 2007-06-30 11:52:00 UTC (rev 473) @@ -38,16 +38,24 @@ ArgParser.simpleParseAndRun(new FindLongestPath(), args); } - private String maxPathname; + /** The longest path name found so far. */ + @NotNull private String maxPathname; + /** The length of the longest path name found so far. */ private int maxLength; + /** Whether to operate with absolute paths. + * <code>true</code> means paths are converted to absolute paths, even if they are relative. + * <code>false</code> means paths stay relative if they are relative. + */ private boolean absolute; + /** Create a FindLongestPath. */ public FindLongestPath() { reset(); } + /** Reset this FindLongestPath to its initial state. */ public void reset() { maxPathname = ""; maxLength = 0; @@ -55,7 +63,7 @@ /** {@inheritDoc} */ @SuppressWarnings({"InstanceMethodNamingConvention"}) - public int run(@NotNull List<String> args) throws Exception { + public int run(@NotNull final List<String> args) throws Exception { if (args.size() == 0) { find("."); System.out.println(this); @@ -69,16 +77,25 @@ return 0; } + /** Sets whether to operate with absolute paths. + * @param absolute Whether to operate with absolute paths, <code>true</code> to convert paths to absolute paths, <code>false</code> to not perform any conversion. + */ @Option({"a", "absolute"}) public void setAbsolute(final boolean absolute) { this.absolute = absolute; } - private void find(final String pathname) { + /** Performs a search based on a pathname. + * @param pathname Pathname to search for the longest pathname. + */ + private void find(@NotNull final String pathname) { find(new File(pathname)); } - private void find(final File path) { + /** Performs a search based on a file. + * @param path File to search for the longest pathname. + */ + private void find(@NotNull final File path) { final String pathname = absolute ? path.getAbsolutePath() : path.getPath(); final int length = pathname.length(); if (length > maxLength) { @@ -88,7 +105,7 @@ } /** {@inheritDoc} */ - public String toString() { + @Override public String toString() { return maxPathname + ":" + maxLength; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 11:46:41
|
Revision: 472 http://svn.sourceforge.net/japi/?rev=472&view=rev Author: christianhujer Date: 2007-06-30 04:46:40 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing @Nullable / @NotNull annotations. Modified Paths: -------------- tools/fontbrowser/trunk/src/net/sf/japi/tools/fontbrowser/FontBrowser.java Modified: tools/fontbrowser/trunk/src/net/sf/japi/tools/fontbrowser/FontBrowser.java =================================================================== --- tools/fontbrowser/trunk/src/net/sf/japi/tools/fontbrowser/FontBrowser.java 2007-06-30 11:46:02 UTC (rev 471) +++ tools/fontbrowser/trunk/src/net/sf/japi/tools/fontbrowser/FontBrowser.java 2007-06-30 11:46:40 UTC (rev 472) @@ -27,17 +27,18 @@ import javax.swing.JTabbedPane; import static javax.swing.WindowConstants.DISPOSE_ON_CLOSE; import net.sf.japi.swing.ActionFactory; +import org.jetbrains.annotations.NotNull; /** A Font Browser. */ public class FontBrowser { /** Action Factory. */ - private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.tools.fontbrowser"); + @NotNull private static final ActionFactory ACTION_FACTORY = ActionFactory.getFactory("net.sf.japi.tools.fontbrowser"); /** Main program. * @param args command line arguments */ - public static void main(final String... args) { + public static void main(@NotNull final String... args) { //noinspection ResultOfObjectAllocationIgnored new FontBrowser(); } @@ -57,14 +58,14 @@ /** Create the tab component for font names. * @return The tab component for font names. */ - private static Component createNamesTab() { + @NotNull private static Component createNamesTab() { return new JScrollPane(new JList(GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames())); } /** Create the tab component for fonts. * @return The tab component for fonts. */ - private static Component createFontsTab() { + @NotNull private static Component createFontsTab() { final JList fontList = new JList(GraphicsEnvironment.getLocalGraphicsEnvironment().getAllFonts()); return new JScrollPane(fontList); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 11:46:06
|
Revision: 471 http://svn.sourceforge.net/japi/?rev=471&view=rev Author: christianhujer Date: 2007-06-30 04:46:02 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Minor improvements: * Added missing @Nullable / @NotNull annotations. * Introduced constant for buffer size. * Made code (for-loop) more readable / maintainable. Modified Paths: -------------- tools/jwget/trunk/src/net/sf/japi/jwget/JWGet.java Modified: tools/jwget/trunk/src/net/sf/japi/jwget/JWGet.java =================================================================== --- tools/jwget/trunk/src/net/sf/japi/jwget/JWGet.java 2007-06-30 11:45:02 UTC (rev 470) +++ tools/jwget/trunk/src/net/sf/japi/jwget/JWGet.java 2007-06-30 11:46:02 UTC (rev 471) @@ -27,6 +27,7 @@ import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; +import org.jetbrains.annotations.NotNull; /** WGet implementation in Java. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> @@ -34,16 +35,19 @@ */ public class JWGet { + /** Size of the I/O buffer. */ + private static final int BUF_SIZE = 8192; + /** Main program. * @param args command line arguments */ - public static void main(final String... args) { + public static void main(@NotNull final String... args) { int returnCode = 0; if (args.length == 0) { System.err.println("Usage: JWGet url..."); returnCode++; } - final byte[] buf = new byte[8192]; + final byte[] buf = new byte[BUF_SIZE]; for (final String arg : args) { try { final URL url = new URL(arg); @@ -56,7 +60,9 @@ final String outputFilename = new File((location != null ? new URL(url, location) : url).getFile()).getName(); System.err.println(outputFilename); out = new FileOutputStream(outputFilename); - for (int bytesRead; (bytesRead = in.read(buf)) != -1; out.write(buf, 0, bytesRead)); + for (int bytesRead; (bytesRead = in.read(buf)) != -1; ) { + out.write(buf, 0, bytesRead); + } } catch (final IOException e) { System.err.println(e); returnCode++; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 11:45:04
|
Revision: 470 http://svn.sourceforge.net/japi/?rev=470&view=rev Author: christianhujer Date: 2007-06-30 04:45:02 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Minor improvements: * Added missing javadoc comment. * Added missing @Nullable / @NotNull annotations. Modified Paths: -------------- tools/keystrokes/trunk/src/net/sf/japi/tools/keystrokes/KeyStrokes.java Modified: tools/keystrokes/trunk/src/net/sf/japi/tools/keystrokes/KeyStrokes.java =================================================================== --- tools/keystrokes/trunk/src/net/sf/japi/tools/keystrokes/KeyStrokes.java 2007-06-30 11:43:33 UTC (rev 469) +++ tools/keystrokes/trunk/src/net/sf/japi/tools/keystrokes/KeyStrokes.java 2007-06-30 11:45:02 UTC (rev 470) @@ -42,6 +42,7 @@ import javax.swing.text.JTextComponent; import net.sf.japi.swing.ActionFactory; import net.sf.japi.swing.ActionMethod; +import org.jetbrains.annotations.NotNull; /** A small tool that displays the keystrokes while typing. */ public class KeyStrokes implements KeyListener { @@ -59,6 +60,7 @@ private JTextField fieldTyped = new JTextField(" "); /** The textarea for displaying the history of keystrokes. */ + @SuppressWarnings({"MagicNumber"}) private JTextArea history = new JTextArea(20, 32); /** The button for clearing. */ @@ -70,7 +72,7 @@ /** Main program. * @param args command line arguments */ - public static void main(final String... args) { + public static void main(@NotNull final String... args) { //noinspection ResultOfObjectAllocationIgnored new KeyStrokes(); } @@ -86,8 +88,10 @@ frame.setDefaultCloseOperation(DISPOSE_ON_CLOSE); } - /** Creates the content pane. */ - private Component createContentPane() { + /** Creates the content pane. + * @return The newly created content pane. + */ + @NotNull private Component createContentPane() { final JPanel contentPane = new JPanel(new GridBagLayout()); final Insets insets = new Insets(2, 2, 2, 2); final GridBagConstraints labelGbc = new GridBagConstraints(); @@ -125,17 +129,17 @@ } /** {@inheritDoc} */ - public void keyPressed(final KeyEvent e) { + public void keyPressed(@NotNull final KeyEvent e) { recordEvent(fieldPressed, e); } /** {@inheritDoc} */ - public void keyReleased(final KeyEvent e) { + public void keyReleased(@NotNull final KeyEvent e) { recordEvent(fieldReleased, e); } /** {@inheritDoc} */ - public void keyTyped(final KeyEvent e) { + public void keyTyped(@NotNull final KeyEvent e) { recordEvent(fieldTyped, e); } @@ -143,7 +147,7 @@ * @param field Field to record at * @param event KeyEvent to record */ - private void recordEvent(final JTextField field, final KeyEvent event) { + private void recordEvent(@NotNull final JTextField field, @NotNull final KeyEvent event) { final String keyStrokeText = KeyStroke.getKeyStrokeForEvent(event).toString(); field.setEditable(true); field.setText(keyStrokeText); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 11:43:35
|
Revision: 469 http://svn.sourceforge.net/japi/?rev=469&view=rev Author: christianhujer Date: 2007-06-30 04:43:33 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing module dependency. Modified Paths: -------------- tools/keystrokes/trunk/keystrokes.iml Modified: tools/keystrokes/trunk/keystrokes.iml =================================================================== --- tools/keystrokes/trunk/keystrokes.iml 2007-06-30 09:50:04 UTC (rev 468) +++ tools/keystrokes/trunk/keystrokes.iml 2007-06-30 11:43:33 UTC (rev 469) @@ -26,6 +26,7 @@ <SOURCES /> </library> </orderEntry> + <orderEntry type="module" module-name="libs-swing-action" /> <orderEntryProperties /> </component> <component name="copyright"> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 09:50:10
|
Revision: 468 http://svn.sourceforge.net/japi/?rev=468&view=rev Author: christianhujer Date: 2007-06-30 02:50:04 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing @NotNull / @Nullable annotations. Modified Paths: -------------- libs/util/trunk/src/net/sf/japi/util/EnumerationIterator.java libs/util/trunk/src/net/sf/japi/util/IteratorEnumeration.java libs/util/trunk/src/net/sf/japi/util/IteratorIterable.java libs/util/trunk/src/net/sf/japi/util/LocaleComparator.java libs/util/trunk/src/net/sf/japi/util/NotNullIterator.java libs/util/trunk/src/net/sf/japi/util/ThrowableHandler.java Modified: libs/util/trunk/src/net/sf/japi/util/EnumerationIterator.java =================================================================== --- libs/util/trunk/src/net/sf/japi/util/EnumerationIterator.java 2007-06-30 09:42:09 UTC (rev 467) +++ libs/util/trunk/src/net/sf/japi/util/EnumerationIterator.java 2007-06-30 09:50:04 UTC (rev 468) @@ -22,6 +22,7 @@ import java.util.Iterator; import java.util.Enumeration; import java.util.NoSuchElementException; +import org.jetbrains.annotations.NotNull; /** Combined Iterator/Iterable proxy for enumerations. * Instances are not reusable. @@ -30,17 +31,17 @@ public class EnumerationIterator<T> implements Iterable<T>, Iterator<T> { /** Enumeration to iterate over. */ - private final Enumeration<T> enumeration; + @NotNull private final Enumeration<T> enumeration; /** Create an Iterable based on an Enumeration, useful for foreach-loops. * @param enumeration Enumeration to iterate over */ - public EnumerationIterator(final Enumeration<T> enumeration) { + public EnumerationIterator(@NotNull final Enumeration<T> enumeration) { this.enumeration = enumeration; } /** {@inheritDoc} */ - public Iterator<T> iterator() { + @NotNull public Iterator<T> iterator() { return this; } Modified: libs/util/trunk/src/net/sf/japi/util/IteratorEnumeration.java =================================================================== --- libs/util/trunk/src/net/sf/japi/util/IteratorEnumeration.java 2007-06-30 09:42:09 UTC (rev 467) +++ libs/util/trunk/src/net/sf/japi/util/IteratorEnumeration.java 2007-06-30 09:50:04 UTC (rev 468) @@ -21,6 +21,7 @@ import java.util.Enumeration; import java.util.Iterator; +import org.jetbrains.annotations.NotNull; /** Enumeration proxy for Iterators. * Instances are not reusable. @@ -29,12 +30,12 @@ public class IteratorEnumeration<T> implements Enumeration<T> { /** Iterator to enumerate. */ - private final Iterator<T> iterator; + @NotNull private final Iterator<T> iterator; /** Create an Enumeration for an Iterator. * @param iterator Iterator to create Enumeration for */ - public IteratorEnumeration(final Iterator<T> iterator) { + public IteratorEnumeration(@NotNull final Iterator<T> iterator) { this.iterator = iterator; } Modified: libs/util/trunk/src/net/sf/japi/util/IteratorIterable.java =================================================================== --- libs/util/trunk/src/net/sf/japi/util/IteratorIterable.java 2007-06-30 09:42:09 UTC (rev 467) +++ libs/util/trunk/src/net/sf/japi/util/IteratorIterable.java 2007-06-30 09:50:04 UTC (rev 468) @@ -20,6 +20,7 @@ package net.sf.japi.util; import java.util.Iterator; +import org.jetbrains.annotations.NotNull; /** * Iterable that wraps an Iterator. @@ -28,18 +29,18 @@ public class IteratorIterable<T> implements Iterable<T> { /** The wrapped Iterator. */ - private Iterator<T> iterator; + @NotNull private Iterator<T> iterator; /** * Wrap an Iterator in an Iterable. * @param iterator Iterator to wrap */ - public IteratorIterable(final Iterator<T> iterator) { + public IteratorIterable(@NotNull final Iterator<T> iterator) { this.iterator = iterator; } /** {@inheritDoc} */ - public Iterator<T> iterator() { + @NotNull public Iterator<T> iterator() { return iterator; } Modified: libs/util/trunk/src/net/sf/japi/util/LocaleComparator.java =================================================================== --- libs/util/trunk/src/net/sf/japi/util/LocaleComparator.java 2007-06-30 09:42:09 UTC (rev 467) +++ libs/util/trunk/src/net/sf/japi/util/LocaleComparator.java 2007-06-30 09:50:04 UTC (rev 468) @@ -22,6 +22,8 @@ import java.util.Comparator; import java.util.Locale; import java.text.Collator; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** Implementation of {@link Comparator} that is able to compare {@link Locale} instances by their names (allowing <code>null</code>). * The Locale for sorting the Locales is determined at creation time. @@ -30,14 +32,14 @@ public final class LocaleComparator implements Comparator<Locale> { /** Collator for comparing the names. */ - private final Collator collator = Collator.getInstance(); + @NotNull private final Collator collator = Collator.getInstance(); /** Create a LocaleComparator. */ public LocaleComparator() { } /** {@inheritDoc} */ - public int compare(final Locale o1, final Locale o2) { + public int compare(@Nullable final Locale o1, @Nullable final Locale o2) { if (o1 == null && o2 == null) { return 0; } else if (o1 == null) { Modified: libs/util/trunk/src/net/sf/japi/util/NotNullIterator.java =================================================================== --- libs/util/trunk/src/net/sf/japi/util/NotNullIterator.java 2007-06-30 09:42:09 UTC (rev 467) +++ libs/util/trunk/src/net/sf/japi/util/NotNullIterator.java 2007-06-30 09:50:04 UTC (rev 468) @@ -21,6 +21,8 @@ import java.util.Iterator; import java.util.NoSuchElementException; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** Iterator / Iterable decorator that skips elements which are <code>null</code>. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> @@ -28,15 +30,15 @@ public class NotNullIterator<T> implements Iterator<T> { /** The iterator to use. */ - private final Iterator<T> iterator; + @NotNull private final Iterator<T> iterator; /** Prefetched next element. */ - private T next; + @Nullable private T next; /** Create a NotNullIterator over another Iterator. - * @param iterator + * @param iterator Iterator to wrap / decorate. */ - public NotNullIterator(final Iterator<T> iterator) { + public NotNullIterator(@NotNull final Iterator<T> iterator) { this.iterator = iterator; prefetchNext(); } @@ -53,7 +55,7 @@ } /** {@inheritDoc} */ - public T next() { + @NotNull public T next() { if (next == null) { throw new NoSuchElementException(); } @@ -73,14 +75,14 @@ public static class NotNullIterable<T> implements Iterable<T> { /** The iterable to iterate over. */ - private final Iterable<T> iterable; + @NotNull private final Iterable<T> iterable; - public NotNullIterable(final Iterable<T> iterable) { + public NotNullIterable(@NotNull final Iterable<T> iterable) { this.iterable = iterable; } /** {@inheritDoc} */ - public Iterator<T> iterator() { + @NotNull public Iterator<T> iterator() { return new NotNullIterator<T>(iterable.iterator()); } Modified: libs/util/trunk/src/net/sf/japi/util/ThrowableHandler.java =================================================================== --- libs/util/trunk/src/net/sf/japi/util/ThrowableHandler.java 2007-06-30 09:42:09 UTC (rev 467) +++ libs/util/trunk/src/net/sf/japi/util/ThrowableHandler.java 2007-06-30 09:50:04 UTC (rev 468) @@ -20,6 +20,7 @@ package net.sf.japi.util; import java.util.EventListener; +import org.jetbrains.annotations.NotNull; /** Interface that is implemented by classes that handle exceptions via callbacks. * This is useful during operations that can throw more than one exception during an operation. @@ -31,6 +32,6 @@ /** Handle a Throwable. * @param t Throwable to handle */ - void handleThrowable(final T t); + void handleThrowable(@NotNull T t); } // interface ThrowableHandler This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 09:42:10
|
Revision: 467 http://svn.sourceforge.net/japi/?rev=467&view=rev Author: christianhujer Date: 2007-06-30 02:42:09 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Removed redundant final modifiers. Suppressed magic number warning. Modified Paths: -------------- libs/util/trunk/src/net/sf/japi/util/EndianConverter.java Modified: libs/util/trunk/src/net/sf/japi/util/EndianConverter.java =================================================================== --- libs/util/trunk/src/net/sf/japi/util/EndianConverter.java 2007-06-30 09:26:17 UTC (rev 466) +++ libs/util/trunk/src/net/sf/japi/util/EndianConverter.java 2007-06-30 09:42:09 UTC (rev 467) @@ -24,7 +24,7 @@ * endian integer to a big endian integer and vice versa. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> */ -@SuppressWarnings({"UtilityClass"}) +@SuppressWarnings({"UtilityClass", "MagicNumber"}) public class EndianConverter { /** Private constructor to prevent instantiation. */ @@ -36,7 +36,7 @@ * @param d double to convert * @return converted double */ - public static final double swapEndianess(final double d) { + public static double swapEndianess(final double d) { return Double.longBitsToDouble(swapEndianess(Double.doubleToRawLongBits(d))); } @@ -45,7 +45,7 @@ * @param f float to convert * @return converted float */ - public static final float swapEndianess(final float f) { + public static float swapEndianess(final float f) { return Float.intBitsToFloat(swapEndianess(Float.floatToRawIntBits(f))); } @@ -55,7 +55,7 @@ * @return converted long */ @SuppressWarnings("OverlyComplexBooleanExpression") - public static final long swapEndianess(final long l) { + public static long swapEndianess(final long l) { return (l & 0x00000000000000FFL) << 56 | (l & 0x000000000000FF00L) << 40 | @@ -73,7 +73,7 @@ * @return converted int */ @SuppressWarnings("OverlyComplexBooleanExpression") - public static final int swapEndianess(final int i) { + public static int swapEndianess(final int i) { return (i & 0x000000FF) << 24 | (i & 0x0000FF00) << 8 | @@ -86,7 +86,7 @@ * @param c char to convert * @return converted char */ - public static final char swapEndianess(final char c) { + public static char swapEndianess(final char c) { return (char) ((c & 0x00FF) << 8 | (c & 0xFF00) >>> 8); @@ -97,7 +97,7 @@ * @param s short to convert * @return converted short */ - public static final short swapEndianess(final short s) { + public static short swapEndianess(final short s) { return (short) ((s & 0x00FF) << 8 | (s & 0xFF00) >>> 8); @@ -108,7 +108,7 @@ * @param b byte to convert * @return converted byte (same as b) */ - public static final byte swapEndianess(final byte b) { + public static byte swapEndianess(final byte b) { return b; } @@ -118,7 +118,7 @@ * @return converted boolean (same as b) */ @SuppressWarnings({"BooleanMethodNameMustStartWithQuestion"}) - public static final boolean swapEndianess(final boolean b) { + public static boolean swapEndianess(final boolean b) { return b; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 09:26:19
|
Revision: 466 http://svn.sourceforge.net/japi/?rev=466&view=rev Author: christianhujer Date: 2007-06-30 02:26:17 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing @NotNull / @Nullable annotations. Modified Paths: -------------- libs/util/trunk/src/net/sf/japi/util/Collections2.java Modified: libs/util/trunk/src/net/sf/japi/util/Collections2.java =================================================================== --- libs/util/trunk/src/net/sf/japi/util/Collections2.java 2007-06-30 09:22:22 UTC (rev 465) +++ libs/util/trunk/src/net/sf/japi/util/Collections2.java 2007-06-30 09:26:17 UTC (rev 466) @@ -19,14 +19,16 @@ package net.sf.japi.util; +import java.util.ArrayList; +import java.util.Collection; import java.util.Collections; +import java.util.Comparator; +import java.util.Iterator; import java.util.List; -import java.util.Collection; import java.util.RandomAccess; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.Comparator; import net.sf.japi.util.filter.Filter; +import org.jetbrains.annotations.Nullable; +import org.jetbrains.annotations.NotNull; /** This class provides some additional utility methods you might miss in {@link Collections}. * It is named Collections2 so you have no problems using both, this class and <code>java.util.Collections</code> (no name conflict). @@ -61,7 +63,7 @@ * @param filter Filter to use for <var>c</var> * @return collection containing only those elements accepted by the filter or <code>null</code> if the Collection could not be created. */ - public static final <T, C extends Collection<T>> C filter(final C c, final Filter<? super T> filter) { + @Nullable public static <T, C extends Collection<T>> C filter(@NotNull final C c, @NotNull final Filter<? super T> filter) { C filtered = null; try { filtered = (C) c.getClass().newInstance(); @@ -94,7 +96,7 @@ * @param filter Filter to use for <var>c</var> * @return number of elements removed */ - public static final <T, C extends Collection<T>> int removeFilter(final C collection, final Filter<? super T> filter) { + public static <T, C extends Collection<T>> int removeFilter(@NotNull final C collection, @NotNull final Filter<? super T> filter) { int removed = 0; for (final T o : collection) { if (!filter.accept(o)) { @@ -111,7 +113,7 @@ * @see Comparable * @see Collections#sort(List) */ - public static final <T extends Comparable<? super T>> boolean isSorted(final List<T> list) { + public static <T extends Comparable<? super T>> boolean isSorted(@NotNull final List<T> list) { if (list.size() < 2) { // empty lists or lists with only 1 element are always sorted, no need to check return true; @@ -141,12 +143,12 @@ /** Checks whether a list is sorted. * @param list List to check - * @param c Comparator to use for comparing list elements + * @param c Comparator to use for comparing list elements or <code>null</code> for natural order * @return <code>true</code> if <var>list</var> is sorted, otherwise <code>false</code> * @see Comparator * @see Collections#sort(List,Comparator) */ - public static final <T> boolean isSorted(final List<T> list, final Comparator<? super T> c) { + public static <T> boolean isSorted(@NotNull final List<T> list, @Nullable final Comparator<? super T> c) { if (c == null) { //noinspection unchecked,RawUseOfParameterizedType return isSorted((List) list); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 09:22:23
|
Revision: 465 http://svn.sourceforge.net/japi/?rev=465&view=rev Author: christianhujer Date: 2007-06-30 02:22:22 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Fixed possible NPE in linearEqualitySearch(). Modified Paths: -------------- libs/util/trunk/src/net/sf/japi/util/Arrays2.java Modified: libs/util/trunk/src/net/sf/japi/util/Arrays2.java =================================================================== --- libs/util/trunk/src/net/sf/japi/util/Arrays2.java 2007-06-30 09:14:17 UTC (rev 464) +++ libs/util/trunk/src/net/sf/japi/util/Arrays2.java 2007-06-30 09:22:22 UTC (rev 465) @@ -516,7 +516,7 @@ */ public static int linearEqualitySearch(@Nullable final Object o, final int fromIndex, final int toIndex, @NotNull final Object[] data) { for (int i = fromIndex; i < toIndex; i++) { - if (o == null && data[i] == null || data[i].equals(o)) { + if (o == null && data[i] == null || o != null && o.equals(data[i]) || data[i].equals(o)) { return i; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 09:14:19
|
Revision: 464 http://svn.sourceforge.net/japi/?rev=464&view=rev Author: christianhujer Date: 2007-06-30 02:14:17 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing @NotNull / @Nullable annotations. Modified Paths: -------------- libs/util/trunk/src/net/sf/japi/util/Arrays2.java Modified: libs/util/trunk/src/net/sf/japi/util/Arrays2.java =================================================================== --- libs/util/trunk/src/net/sf/japi/util/Arrays2.java 2007-06-30 08:56:52 UTC (rev 463) +++ libs/util/trunk/src/net/sf/japi/util/Arrays2.java 2007-06-30 09:14:17 UTC (rev 464) @@ -19,14 +19,16 @@ package net.sf.japi.util; +import java.lang.reflect.Array; +import java.util.ArrayList; import java.util.Arrays; -import java.util.Random; import java.util.Collection; +import java.util.Comparator; import java.util.List; -import java.util.ArrayList; -import java.util.Comparator; -import java.lang.reflect.Array; +import java.util.Random; import net.sf.japi.util.filter.Filter; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** This class provides some additional utility methods you might miss in {@link Arrays}. * It is named Arrays2 so you have no problems using both, this class and <code>java.util.Arrays</code> (no name conflict). @@ -46,7 +48,7 @@ * @param a Arrays to concatenate * @return new Array containing all elements of all arrays */ - public static double[] concat(final double[]... a) { + @NotNull public static double[] concat(@NotNull final double[]... a) { int ns = 0; for (final double[] anA : a) { ns += anA.length; @@ -62,7 +64,7 @@ * @param a Arrays to concatenate * @return new Array containing all elements of all arrays */ - public static float[] concat(final float[]... a) { + @NotNull public static float[] concat(@NotNull final float[]... a) { int ns = 0; for (final float[] anA : a) { ns += anA.length; @@ -78,7 +80,7 @@ * @param a Arrays to concatenate * @return new Array containing all elements of all arrays */ - public static long[] concat(final long[]... a) { + @NotNull public static long[] concat(@NotNull final long[]... a) { int ns = 0; for (final long[] anA : a) { ns += anA.length; @@ -94,7 +96,7 @@ * @param a Arrays to concatenate * @return new Array containing all elements of all arrays */ - public static int[] concat(final int[]... a) { + @NotNull public static int[] concat(@NotNull final int[]... a) { int ns = 0; for (final int[] anA : a) { ns += anA.length; @@ -110,7 +112,7 @@ * @param a Arrays to concatenate * @return new Array containing all elements of all arrays */ - public static short[] concat(final short[]... a) { + @NotNull public static short[] concat(@NotNull final short[]... a) { int ns = 0; for (final short[] anA : a) { ns += anA.length; @@ -126,7 +128,7 @@ * @param a Arrays to concatenate * @return new Array containing all elements of all arrays */ - public static char[] concat(final char[]... a) { + @NotNull public static char[] concat(@NotNull final char[]... a) { int ns = 0; for (final char[] anA : a) { ns += anA.length; @@ -142,7 +144,7 @@ * @param a Arrays to concatenate * @return new Array containing all elements of all arrays */ - public static byte[] concat(final byte[]... a) { + @NotNull public static byte[] concat(@NotNull final byte[]... a) { int ns = 0; for (final byte[] anA : a) { ns += anA.length; @@ -158,7 +160,7 @@ * @param a Arrays to concatenate * @return new Array containing all elements of all arrays */ - public static boolean[] concat(final boolean[]... a) { + @NotNull public static boolean[] concat(@NotNull final boolean[]... a) { int ns = 0; for (final boolean[] anA : a) { ns += anA.length; @@ -174,7 +176,7 @@ * @param a Arrays to concatenate * @return new Array containing all elements of all arrays */ - public static <T> T[] concat(final T[]... a) { + @NotNull public static <T> T[] concat(@NotNull final T[]... a) { int ns = 0; for (final T[] anA : a) { ns += anA.length; @@ -193,7 +195,7 @@ * @return array containing only those elements from <var>a</var> accepted by <var>filter</var> * @see Collections2#filter(Collection,Filter) */ - public static <T> T[] filter(final Filter<? super T> filter, final T... a) { + @NotNull public static <T> T[] filter(@NotNull final Filter<? super T> filter, @NotNull final T... a) { //Class<?> ct = a.getClass().getComponentType(); //T[] t = (T[]) Array.newInstance(ct, 0); //List<T> tl = Arrays.asList(a); @@ -215,7 +217,7 @@ * @param filter Filter to use for <var>a</var> * @return number of elements in <var>a</var> accepted by <var>filter</var> */ - public static <T> int count(final Filter<? super T> filter, final T... a) { + public static <T> int count(@NotNull final Filter<? super T> filter, @NotNull final T... a) { int n = 0; for (final T t : a) { if (filter.accept(t)) { @@ -245,7 +247,7 @@ * @see Arrays#binarySearch(int[],int) * @see Arrays#sort(int[]) */ - public static int binarySearch(final int[] a, final int key, int low, int high) { + public static int binarySearch(@NotNull final int[] a, final int key, int low, int high) { while (low <= high) { final int mid = low + high >> 1; final int midVal = a[mid]; @@ -265,7 +267,7 @@ * @param data array of booleans to perform linear search on * @return index of <var>n</var> in <var>data</var> or -1 if not found */ - public static int linearSearch(final boolean z, final boolean[] data) { + public static int linearSearch(final boolean z, @NotNull final boolean[] data) { return linearSearch(z, 0, data.length, data); } @@ -274,7 +276,7 @@ * @param data array of chars to perform linear search on * @return index of <var>n</var> in <var>data</var> or -1 if not found */ - public static int linearSearch(final char c, final char[] data) { + public static int linearSearch(final char c, @NotNull final char[] data) { return linearSearch(c, 0, data.length, data); } @@ -283,7 +285,7 @@ * @param data array of doubles to perform linear search on * @return index of <var>n</var> in <var>data</var> or -1 if not found */ - public static int linearSearch(final double d, final double[] data) { + public static int linearSearch(final double d, @NotNull final double[] data) { return linearSearch(d, 0, data.length, data); } @@ -292,7 +294,7 @@ * @param data array of floats to perform linear search on * @return index of <var>n</var> in <var>data</var> or -1 if not found */ - public static int linearSearch(final float f, final float[] data) { + public static int linearSearch(final float f, @NotNull final float[] data) { return linearSearch(f, 0, data.length, data); } @@ -301,7 +303,7 @@ * @param data array of longs to perform linear search on * @return index of <var>n</var> in <var>data</var> or -1 if not found */ - public static int linearSearch(final long l, final long[] data) { + public static int linearSearch(final long l, @NotNull final long[] data) { return linearSearch(l, 0, data.length, data); } @@ -310,7 +312,7 @@ * @param data array of ints to perform linear search on * @return index of <var>n</var> in <var>data</var> or -1 if not found */ - public static int linearSearch(final int n, final int[] data) { + public static int linearSearch(final int n, @NotNull final int[] data) { return linearSearch(n, 0, data.length, data); } @@ -319,7 +321,7 @@ * @param data array of shorts to perform linear search on * @return index of <var>n</var> in <var>data</var> or -1 if not found */ - public static int linearSearch(final short s, final short[] data) { + public static int linearSearch(final short s, @NotNull final short[] data) { return linearSearch(s, 0, data.length, data); } @@ -328,7 +330,7 @@ * @param data array of bytes to perform linear search on * @return index of <var>n</var> in <var>data</var> or -1 if not found */ - public static int linearSearch(final byte b, final byte[] data) { + public static int linearSearch(final byte b, @NotNull final byte[] data) { return linearSearch(b, 0, data.length, data); } @@ -340,7 +342,7 @@ * @return index of <var>n</var> in <var>data</var> or -1 if not found * @throws ArrayIndexOutOfBoundsException in case <code><var>fromIndex</var> < 0</code> or <code><var>toIndex</var> >= data.length</code> */ - public static int linearSearch(final boolean z, final int fromIndex, final int toIndex, final boolean[] data) { + public static int linearSearch(final boolean z, final int fromIndex, final int toIndex, @NotNull final boolean[] data) { for (int i = fromIndex; i < toIndex; i++) { if (data[i] == z) { return i; @@ -357,7 +359,7 @@ * @return index of <var>n</var> in <var>data</var> or -1 if not found * @throws ArrayIndexOutOfBoundsException in case <code><var>fromIndex</var> < 0</code> or <code><var>toIndex</var> >= data.length</code> */ - public static int linearSearch(final char c, final int fromIndex, final int toIndex, final char[] data) { + public static int linearSearch(final char c, final int fromIndex, final int toIndex, @NotNull final char[] data) { for (int i = fromIndex; i < toIndex; i++) { if (data[i] == c) { return i; @@ -374,7 +376,7 @@ * @return index of <var>n</var> in <var>data</var> or -1 if not found * @throws ArrayIndexOutOfBoundsException in case <code><var>fromIndex</var> < 0</code> or <code><var>toIndex</var> >= data.length</code> */ - public static int linearSearch(final double d, final int fromIndex, final int toIndex, final double[] data) { + public static int linearSearch(final double d, final int fromIndex, final int toIndex, @NotNull final double[] data) { for (int i = fromIndex; i < toIndex; i++) { if (data[i] == d) { return i; @@ -391,7 +393,7 @@ * @return index of <var>n</var> in <var>data</var> or -1 if not found * @throws ArrayIndexOutOfBoundsException in case <code><var>fromIndex</var> < 0</code> or <code><var>toIndex</var> >= data.length</code> */ - public static int linearSearch(final float f, final int fromIndex, final int toIndex, final float[] data) { + public static int linearSearch(final float f, final int fromIndex, final int toIndex, @NotNull final float[] data) { for (int i = fromIndex; i < toIndex; i++) { if (data[i] == f) { return i; @@ -408,7 +410,7 @@ * @return index of <var>n</var> in <var>data</var> or -1 if not found * @throws ArrayIndexOutOfBoundsException in case <code><var>fromIndex</var> < 0</code> or <code><var>toIndex</var> >= data.length</code> */ - public static int linearSearch(final long l, final int fromIndex, final int toIndex, final long[] data) { + public static int linearSearch(final long l, final int fromIndex, final int toIndex, @NotNull final long[] data) { for (int i = fromIndex; i < toIndex; i++) { if (data[i] == l) { return i; @@ -425,7 +427,7 @@ * @return index of <var>n</var> in <var>data</var> or -1 if not found * @throws ArrayIndexOutOfBoundsException in case <code><var>fromIndex</var> < 0</code> or <code><var>toIndex</var> >= data.length</code> */ - public static int linearSearch(final int n, final int fromIndex, final int toIndex, final int[] data) { + public static int linearSearch(final int n, final int fromIndex, final int toIndex, @NotNull final int[] data) { for (int i = fromIndex; i < toIndex; i++) { if (data[i] == n) { return i; @@ -442,7 +444,7 @@ * @return index of <var>n</var> in <var>data</var> or -1 if not found * @throws ArrayIndexOutOfBoundsException in case <code><var>fromIndex</var> < 0</code> or <code><var>toIndex</var> >= data.length</code> */ - public static int linearSearch(final short s, final int fromIndex, final int toIndex, final short[] data) { + public static int linearSearch(final short s, final int fromIndex, final int toIndex, @NotNull final short[] data) { for (int i = fromIndex; i < toIndex; i++) { if (data[i] == s) { return i; @@ -459,7 +461,7 @@ * @return index of <var>n</var> in <var>data</var> or -1 if not found * @throws ArrayIndexOutOfBoundsException in case <code><var>fromIndex</var> < 0</code> or <code><var>toIndex</var> >= data.length</code> */ - public static int linearSearch(final byte b, final int fromIndex, final int toIndex, final byte[] data) { + public static int linearSearch(final byte b, final int fromIndex, final int toIndex, @NotNull final byte[] data) { for (int i = fromIndex; i < toIndex; i++) { if (data[i] == b) { return i; @@ -473,7 +475,7 @@ * @param data array of Objects to perform linear search on * @return index of <var>n</var> in <var>data</var> or -1 if not found */ - public static int linearIdentitySearch(final Object o, final Object[] data) { + public static int linearIdentitySearch(@Nullable final Object o, @NotNull final Object[] data) { return linearIdentitySearch(o, 0, data.length, data); } @@ -486,7 +488,7 @@ * @throws ArrayIndexOutOfBoundsException in case <code><var>fromIndex</var> < 0</code> or <code><var>toIndex</var> >= data.length</code> */ @SuppressWarnings({"ObjectEquality"}) - public static int linearIdentitySearch(final Object o, final int fromIndex, final int toIndex, final Object[] data) { + public static int linearIdentitySearch(@Nullable final Object o, final int fromIndex, final int toIndex, @NotNull final Object[] data) { for (int i = fromIndex; i < toIndex; i++) { if (data[i] == o) { return i; @@ -500,7 +502,7 @@ * @param data array of Objects to perform linear search on * @return index of <var>n</var> in <var>data</var> or -1 if not found */ - public static int linearEqualitySearch(final Object o, final Object[] data) { + public static int linearEqualitySearch(@Nullable final Object o, @NotNull final Object[] data) { return linearEqualitySearch(o, 0, data.length, data); } @@ -512,7 +514,7 @@ * @return index of <var>n</var> in <var>data</var> or -1 if not found * @throws ArrayIndexOutOfBoundsException in case <code><var>fromIndex</var> < 0</code> or <code><var>toIndex</var> >= data.length</code> */ - public static int linearEqualitySearch(final Object o, final int fromIndex, final int toIndex, final Object[] data) { + public static int linearEqualitySearch(@Nullable final Object o, final int fromIndex, final int toIndex, @NotNull final Object[] data) { for (int i = fromIndex; i < toIndex; i++) { if (o == null && data[i] == null || data[i].equals(o)) { return i; @@ -524,9 +526,10 @@ /** Perform a linear search on an array of Objects. * @param o Object to find in <var>data</var> * @param data array of Objects to perform linear search on + * @param comp Comparator for comparing objects * @return index of <var>n</var> in <var>data</var> or -1 if not found */ - public static <T> int linearComparisonSearch(final T o, final T[] data, final Comparator<? super T> comp) { + public static <T> int linearComparisonSearch(@Nullable final T o, @NotNull final T[] data, @NotNull final Comparator<? super T> comp) { return linearComparisonSearch(o, 0, data.length, data, comp); } @@ -535,10 +538,11 @@ * @param fromIndex start index within <var>data</var> * @param toIndex end index within <var>data</var> * @param data array of Objects to perform linear search on + * @param comp Comparator for comparing objects * @return index of <var>n</var> in <var>data</var> or -1 if not found * @throws ArrayIndexOutOfBoundsException in case <code><var>fromIndex</var> < 0</code> or <code><var>toIndex</var> >= data.length</code> */ - public static <T> int linearComparisonSearch(final T o, final int fromIndex, final int toIndex, final T[] data, final Comparator<? super T> comp) { + public static <T> int linearComparisonSearch(@Nullable final T o, final int fromIndex, final int toIndex, @NotNull final T[] data, @NotNull final Comparator<? super T> comp) { for (int i = fromIndex; i < toIndex; i++) { if (comp.compare(o, data[i]) == 0) { return i; @@ -550,7 +554,7 @@ /** Shuffle an array of booleans. * @param array Array to shuffle */ - public static void shuffle(final boolean[] array) { + public static void shuffle(@NotNull final boolean[] array) { shuffle(array, 0, array.length, RND); } @@ -558,7 +562,7 @@ * @param array Array to shuffle * @param rnd Random Number Generator */ - public static void shuffle(final boolean[] array, final Random rnd) { + public static void shuffle(@NotNull final boolean[] array, @NotNull final Random rnd) { shuffle(array, 0, array.length, rnd); } @@ -567,7 +571,7 @@ * @param fromIndex Start index to shuffle at (inclusive) * @param toIndex End index to shuffle at (exclusive) */ - public static void shuffle(final boolean[] array, final int fromIndex, final int toIndex) { + public static void shuffle(@NotNull final boolean[] array, final int fromIndex, final int toIndex) { shuffle(array, fromIndex, toIndex, RND); } @@ -577,7 +581,7 @@ * @param toIndex End index to shuffle at (exclusive) * @param rnd Random number generator */ - public static void shuffle(final boolean[] array, final int fromIndex, final int toIndex, final Random rnd) { + public static void shuffle(@NotNull final boolean[] array, final int fromIndex, final int toIndex, @NotNull final Random rnd) { for (int i = fromIndex; i < toIndex; i++) { final int j = rnd.nextInt(toIndex - fromIndex) + fromIndex; final boolean cache = array[i]; @@ -589,7 +593,7 @@ /** Shuffle an array of chars. * @param array Array to shuffle */ - public static void shuffle(final char[] array) { + public static void shuffle(@NotNull final char[] array) { shuffle(array, 0, array.length, RND); } @@ -597,7 +601,7 @@ * @param array Array to shuffle * @param rnd Random Number Generator */ - public static void shuffle(final char[] array, final Random rnd) { + public static void shuffle(@NotNull final char[] array, @NotNull final Random rnd) { shuffle(array, 0, array.length, rnd); } @@ -606,7 +610,7 @@ * @param fromIndex Start index to shuffle at (inclusive) * @param toIndex End index to shuffle at (exclusive) */ - public static void shuffle(final char[] array, final int fromIndex, final int toIndex) { + public static void shuffle(@NotNull final char[] array, final int fromIndex, final int toIndex) { shuffle(array, fromIndex, toIndex, RND); } @@ -616,7 +620,7 @@ * @param toIndex End index to shuffle at (exclusive) * @param rnd Random number generator */ - public static void shuffle(final char[] array, final int fromIndex, final int toIndex, final Random rnd) { + public static void shuffle(@NotNull final char[] array, final int fromIndex, final int toIndex, @NotNull final Random rnd) { for (int i = fromIndex; i < toIndex; i++) { final int j = rnd.nextInt(toIndex - fromIndex) + fromIndex; final char cache = array[i]; @@ -628,7 +632,7 @@ /** Shuffle an array of bytes. * @param array Array to shuffle */ - public static void shuffle(final byte[] array) { + public static void shuffle(@NotNull final byte[] array) { shuffle(array, 0, array.length, RND); } @@ -636,7 +640,7 @@ * @param array Array to shuffle * @param rnd Random Number Generator */ - public static void shuffle(final byte[] array, final Random rnd) { + public static void shuffle(@NotNull final byte[] array, @NotNull final Random rnd) { shuffle(array, 0, array.length, rnd); } @@ -645,7 +649,7 @@ * @param fromIndex Start index to shuffle at (inclusive) * @param toIndex End index to shuffle at (exclusive) */ - public static void shuffle(final byte[] array, final int fromIndex, final int toIndex) { + public static void shuffle(@NotNull final byte[] array, final int fromIndex, final int toIndex) { shuffle(array, fromIndex, toIndex, RND); } @@ -655,7 +659,7 @@ * @param toIndex End index to shuffle at (exclusive) * @param rnd Random number generator */ - public static void shuffle(final byte[] array, final int fromIndex, final int toIndex, final Random rnd) { + public static void shuffle(@NotNull final byte[] array, final int fromIndex, final int toIndex, @NotNull final Random rnd) { for (int i = fromIndex; i < toIndex; i++) { final int j = rnd.nextInt(toIndex - fromIndex) + fromIndex; final byte cache = array[i]; @@ -667,7 +671,7 @@ /** Shuffle an array of shorts. * @param array Array to shuffle */ - public static void shuffle(final short[] array) { + public static void shuffle(@NotNull final short[] array) { shuffle(array, 0, array.length, RND); } @@ -675,7 +679,7 @@ * @param array Array to shuffle * @param rnd Random Number Generator */ - public static void shuffle(final short[] array, final Random rnd) { + public static void shuffle(@NotNull final short[] array, @NotNull final Random rnd) { shuffle(array, 0, array.length, rnd); } @@ -684,7 +688,7 @@ * @param fromIndex Start index to shuffle at (inclusive) * @param toIndex End index to shuffle at (exclusive) */ - public static void shuffle(final short[] array, final int fromIndex, final int toIndex) { + public static void shuffle(@NotNull final short[] array, final int fromIndex, final int toIndex) { shuffle(array, fromIndex, toIndex, RND); } @@ -694,7 +698,7 @@ * @param toIndex End index to shuffle at (exclusive) * @param rnd Random number generator */ - public static void shuffle(final short[] array, final int fromIndex, final int toIndex, final Random rnd) { + public static void shuffle(@NotNull final short[] array, final int fromIndex, final int toIndex, @NotNull final Random rnd) { for (int i = fromIndex; i < toIndex; i++) { final int j = rnd.nextInt(toIndex - fromIndex) + fromIndex; final short cache = array[i]; @@ -706,7 +710,7 @@ /** Shuffle an array of ints. * @param array Array to shuffle */ - public static void shuffle(final int[] array) { + public static void shuffle(@NotNull final int[] array) { shuffle(array, 0, array.length, RND); } @@ -714,7 +718,7 @@ * @param array Array to shuffle * @param rnd Random Number Generator */ - public static void shuffle(final int[] array, final Random rnd) { + public static void shuffle(@NotNull final int[] array, @NotNull final Random rnd) { shuffle(array, 0, array.length, rnd); } @@ -723,7 +727,7 @@ * @param fromIndex Start index to shuffle at (inclusive) * @param toIndex End index to shuffle at (exclusive) */ - public static void shuffle(final int[] array, final int fromIndex, final int toIndex) { + public static void shuffle(@NotNull final int[] array, final int fromIndex, final int toIndex) { shuffle(array, fromIndex, toIndex, RND); } @@ -733,7 +737,7 @@ * @param toIndex End index to shuffle at (exclusive) * @param rnd Random number generator */ - public static void shuffle(final int[] array, final int fromIndex, final int toIndex, final Random rnd) { + public static void shuffle(@NotNull final int[] array, final int fromIndex, final int toIndex, @NotNull final Random rnd) { for (int i = fromIndex; i < toIndex; i++) { final int j = rnd.nextInt(toIndex - fromIndex) + fromIndex; final int cache = array[i]; @@ -745,7 +749,7 @@ /** Shuffle an array of longs. * @param array Array to shuffle */ - public static void shuffle(final long[] array) { + public static void shuffle(@NotNull final long[] array) { shuffle(array, 0, array.length, RND); } @@ -753,7 +757,7 @@ * @param array Array to shuffle * @param rnd Random Number Generator */ - public static void shuffle(final long[] array, final Random rnd) { + public static void shuffle(@NotNull final long[] array, @NotNull final Random rnd) { shuffle(array, 0, array.length, rnd); } @@ -762,7 +766,7 @@ * @param fromIndex Start index to shuffle at (inclusive) * @param toIndex End index to shuffle at (exclusive) */ - public static void shuffle(final long[] array, final int fromIndex, final int toIndex) { + public static void shuffle(@NotNull final long[] array, final int fromIndex, final int toIndex) { shuffle(array, fromIndex, toIndex, RND); } @@ -772,7 +776,7 @@ * @param toIndex End index to shuffle at (exclusive) * @param rnd Random number generator */ - public static void shuffle(final long[] array, final int fromIndex, final int toIndex, final Random rnd) { + public static void shuffle(@NotNull final long[] array, final int fromIndex, final int toIndex, @NotNull final Random rnd) { for (int i = fromIndex; i < toIndex; i++) { final int j = rnd.nextInt(toIndex - fromIndex) + fromIndex; final long cache = array[i]; @@ -784,7 +788,7 @@ /** Shuffle an array of floats. * @param array Array to shuffle */ - public static void shuffle(final float[] array) { + public static void shuffle(@NotNull final float[] array) { shuffle(array, 0, array.length, RND); } @@ -792,7 +796,7 @@ * @param array Array to shuffle * @param rnd Random Number Generator */ - public static void shuffle(final float[] array, final Random rnd) { + public static void shuffle(@NotNull final float[] array, @NotNull final Random rnd) { shuffle(array, 0, array.length, rnd); } @@ -801,7 +805,7 @@ * @param fromIndex Start index to shuffle at (inclusive) * @param toIndex End index to shuffle at (exclusive) */ - public static void shuffle(final float[] array, final int fromIndex, final int toIndex) { + public static void shuffle(@NotNull final float[] array, final int fromIndex, final int toIndex) { shuffle(array, fromIndex, toIndex, RND); } @@ -811,7 +815,7 @@ * @param toIndex End index to shuffle at (exclusive) * @param rnd Random number generator */ - public static void shuffle(final float[] array, final int fromIndex, final int toIndex, final Random rnd) { + public static void shuffle(@NotNull final float[] array, final int fromIndex, final int toIndex, @NotNull final Random rnd) { for (int i = fromIndex; i < toIndex; i++) { final int j = rnd.nextInt(toIndex - fromIndex) + fromIndex; final float cache = array[i]; @@ -823,7 +827,7 @@ /** Shuffle an array of doubles. * @param array Array to shuffle */ - public static void shuffle(final double[] array) { + public static void shuffle(@NotNull final double[] array) { shuffle(array, 0, array.length, RND); } @@ -831,7 +835,7 @@ * @param array Array to shuffle * @param rnd Random Number Generator */ - public static void shuffle(final double[] array, final Random rnd) { + public static void shuffle(@NotNull final double[] array, @NotNull final Random rnd) { shuffle(array, 0, array.length, rnd); } @@ -840,7 +844,7 @@ * @param fromIndex Start index to shuffle at (inclusive) * @param toIndex End index to shuffle at (exclusive) */ - public static void shuffle(final double[] array, final int fromIndex, final int toIndex) { + public static void shuffle(@NotNull final double[] array, final int fromIndex, final int toIndex) { shuffle(array, fromIndex, toIndex, RND); } @@ -850,7 +854,7 @@ * @param toIndex End index to shuffle at (exclusive) * @param rnd Random number generator */ - public static void shuffle(final double[] array, final int fromIndex, final int toIndex, final Random rnd) { + public static void shuffle(@NotNull final double[] array, final int fromIndex, final int toIndex, @NotNull final Random rnd) { for (int i = fromIndex; i < toIndex; i++) { final int j = rnd.nextInt(toIndex - fromIndex) + fromIndex; final double cache = array[i]; @@ -862,7 +866,7 @@ /** Shuffle an array of Objects. * @param array Array to shuffle */ - public static void shuffle(final Object[] array) { + public static void shuffle(@NotNull final Object[] array) { shuffle(array, 0, array.length, RND); } @@ -870,7 +874,7 @@ * @param array Array to shuffle * @param rnd Random Number Generator */ - public static void shuffle(final Object[] array, final Random rnd) { + public static void shuffle(@NotNull final Object[] array, @NotNull final Random rnd) { shuffle(array, 0, array.length, rnd); } @@ -879,7 +883,7 @@ * @param fromIndex Start index to shuffle at (inclusive) * @param toIndex End index to shuffle at (exclusive) */ - public static void shuffle(final Object[] array, final int fromIndex, final int toIndex) { + public static void shuffle(@NotNull final Object[] array, final int fromIndex, final int toIndex) { shuffle(array, fromIndex, toIndex, RND); } @@ -889,7 +893,7 @@ * @param toIndex End index to shuffle at (exclusive) * @param rnd Random number generator */ - public static void shuffle(final Object[] array, final int fromIndex, final int toIndex, final Random rnd) { + public static void shuffle(@NotNull final Object[] array, final int fromIndex, final int toIndex, @NotNull final Random rnd) { for (int i = fromIndex; i < toIndex; i++) { final int j = rnd.nextInt(toIndex - fromIndex) + fromIndex; final Object cache = array[i]; @@ -903,7 +907,7 @@ * @param val boolean value to count frequency of * @return frequency of <var>val</var> in <var>array</var> */ - public static int freq(final boolean[] array, final boolean val) { + public static int freq(@NotNull final boolean[] array, final boolean val) { return freq(array, 0, array.length, val); } @@ -914,7 +918,7 @@ * @param val boolean value to count frequency of * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ - public static int freq(final boolean[] array, final int fromIndex, final int toIndex, final boolean val) { + public static int freq(@NotNull final boolean[] array, final int fromIndex, final int toIndex, final boolean val) { int count = 0; for (int i = fromIndex; i < toIndex; i++) { if (array[i] == val) { @@ -929,7 +933,7 @@ * @param val char value to count frequency of * @return frequency of <var>val</var> in <var>array</var> */ - public static int freq(final char[] array, final char val) { + public static int freq(@NotNull final char[] array, final char val) { return freq(array, 0, array.length, val); } @@ -940,7 +944,7 @@ * @param val char value to count frequency of * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ - public static int freq(final char[] array, final int fromIndex, final int toIndex, final char val) { + public static int freq(@NotNull final char[] array, final int fromIndex, final int toIndex, final char val) { int count = 0; for (int i = fromIndex; i < toIndex; i++) { if (array[i] == val) { @@ -955,7 +959,7 @@ * @param val byte value to count frequency of * @return frequency of <var>val</var> in <var>array</var> */ - public static int freq(final byte[] array, final byte val) { + public static int freq(@NotNull final byte[] array, final byte val) { return freq(array, 0, array.length, val); } @@ -966,7 +970,7 @@ * @param val byte value to count frequency of * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ - public static int freq(final byte[] array, final int fromIndex, final int toIndex, final byte val) { + public static int freq(@NotNull final byte[] array, final int fromIndex, final int toIndex, final byte val) { int count = 0; for (int i = fromIndex; i < toIndex; i++) { if (array[i] == val) { @@ -981,7 +985,7 @@ * @param val short value to count frequency of * @return frequency of <var>val</var> in <var>array</var> */ - public static int freq(final short[] array, final short val) { + public static int freq(@NotNull final short[] array, final short val) { return freq(array, 0, array.length, val); } @@ -992,7 +996,7 @@ * @param val short value to count frequency of * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ - public static int freq(final short[] array, final int fromIndex, final int toIndex, final short val) { + public static int freq(@NotNull final short[] array, final int fromIndex, final int toIndex, final short val) { int count = 0; for (int i = fromIndex; i < toIndex; i++) { if (array[i] == val) { @@ -1007,7 +1011,7 @@ * @param val int value to count frequency of * @return frequency of <var>val</var> in <var>array</var> */ - public static int freq(final int[] array, final int val) { + public static int freq(@NotNull final int[] array, final int val) { return freq(array, 0, array.length, val); } @@ -1018,7 +1022,7 @@ * @param val int value to count frequency of * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ - public static int freq(final int[] array, final int fromIndex, final int toIndex, final int val) { + public static int freq(@NotNull final int[] array, final int fromIndex, final int toIndex, final int val) { int count = 0; for (int i = fromIndex; i < toIndex; i++) { if (array[i] == val) { @@ -1033,7 +1037,7 @@ * @param val long value to count frequency of * @return frequency of <var>val</var> in <var>array</var> */ - public static int freq(final long[] array, final long val) { + public static int freq(@NotNull final long[] array, final long val) { return freq(array, 0, array.length, val); } @@ -1044,7 +1048,7 @@ * @param val long value to count frequency of * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ - public static int freq(final long[] array, final int fromIndex, final int toIndex, final long val) { + public static int freq(@NotNull final long[] array, final int fromIndex, final int toIndex, final long val) { int count = 0; for (int i = fromIndex; i < toIndex; i++) { if (array[i] == val) { @@ -1059,7 +1063,7 @@ * @param val float value to count frequency of * @return frequency of <var>val</var> in <var>array</var> */ - public static int freq(final float[] array, final float val) { + public static int freq(@NotNull final float[] array, final float val) { return freq(array, 0, array.length, val); } @@ -1070,7 +1074,7 @@ * @param val float value to count frequency of * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ - public static int freq(final float[] array, final int fromIndex, final int toIndex, final float val) { + public static int freq(@NotNull final float[] array, final int fromIndex, final int toIndex, final float val) { int count = 0; for (int i = fromIndex; i < toIndex; i++) { if (array[i] == val) { @@ -1085,7 +1089,7 @@ * @param val double value to count frequency of * @return frequency of <var>val</var> in <var>array</var> */ - public static int freq(final double[] array, final double val) { + public static int freq(@NotNull final double[] array, final double val) { return freq(array, 0, array.length, val); } @@ -1096,7 +1100,7 @@ * @param val double value to count frequency of * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ - public static int freq(final double[] array, final int fromIndex, final int toIndex, final double val) { + public static int freq(@NotNull final double[] array, final int fromIndex, final int toIndex, final double val) { int count = 0; for (int i = fromIndex; i < toIndex; i++) { if (array[i] == val) { @@ -1111,7 +1115,7 @@ * @param val Object value to count frequency of * @return frequency of <var>val</var> in <var>array</var> */ - public static int freqIdentity(final Object[] array, final Object val) { + public static int freqIdentity(@NotNull final Object[] array, @Nullable final Object val) { return freqIdentity(array, 0, array.length, val); } @@ -1123,7 +1127,7 @@ * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ @SuppressWarnings({"ObjectEquality"}) - public static int freqIdentity(final Object[] array, final int fromIndex, final int toIndex, final Object val) { + public static int freqIdentity(@NotNull final Object[] array, final int fromIndex, final int toIndex, @Nullable final Object val) { int count = 0; for (int i = fromIndex; i < toIndex; i++) { if (array[i] == val) { @@ -1138,7 +1142,7 @@ * @param val Object value to count frequency of * @return frequency of <var>val</var> in <var>array</var> */ - public static int freqEquals(final Object[] array, final Object val) { + public static int freqEquals(@NotNull final Object[] array, @NotNull final Object val) { return freqEquals(array, 0, array.length, val); } @@ -1149,7 +1153,7 @@ * @param val Object value to count frequency of * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ - public static int freqEquals(final Object[] array, final int fromIndex, final int toIndex, final Object val) { + public static int freqEquals(@NotNull final Object[] array, final int fromIndex, final int toIndex, @Nullable final Object val) { if (val == null) { return freqIdentity(array, fromIndex, toIndex, val); } @@ -1167,7 +1171,7 @@ * @param val Comparable value to count frequency of * @return frequency of <var>val</var> in <var>array</var> */ - public static <T extends Comparable<T>> int freqComparable(final T[] array, final T val) { + public static <T extends Comparable<T>> int freqComparable(@NotNull final T[] array, @NotNull final T val) { return freqComparable(array, 0, array.length, val); } @@ -1178,7 +1182,7 @@ * @param val Comparable value to count frequency of * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ - public static <T extends Comparable<T>> int freqComparable(final T[] array, final int fromIndex, final int toIndex, final T val) { + public static <T extends Comparable<T>> int freqComparable(@NotNull final T[] array, final int fromIndex, final int toIndex, @Nullable final T val) { if (val == null) { return freqIdentity(array, fromIndex, toIndex, val); } @@ -1197,7 +1201,7 @@ * @param comparator Comparator for comparing objects * @return frequency of <var>val</var> in <var>array</var> */ - public static <T> int freqComparator(final T[] array, final T val, final Comparator<? super T> comparator) { + public static <T> int freqComparator(@NotNull final T[] array, @NotNull final T val, @NotNull final Comparator<? super T> comparator) { return freqComparator(array, 0, array.length, val, comparator); } @@ -1209,7 +1213,7 @@ * @param comparator Comparator for comparing objects * @return frequency of <var>val</var> in <var>array</var> between <var>fromIndex</var> and <var>toIndex</var> */ - public static <T> int freqComparator(final T[] array, final int fromIndex, final int toIndex, final T val, final Comparator<? super T> comparator) { + public static <T> int freqComparator(@NotNull final T[] array, final int fromIndex, final int toIndex, @NotNull final T val, @NotNull final Comparator<? super T> comparator) { int count = 0; for (int i = fromIndex; i < toIndex; i++) { if (comparator.compare(array[i], val) == 0) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 08:56:53
|
Revision: 463 http://svn.sourceforge.net/japi/?rev=463&view=rev Author: christianhujer Date: 2007-06-30 01:56:52 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added some missing @NotNull / @Nullable annotations. Modified Paths: -------------- tools/cstyle/trunk/src/net/sf/japi/cstyle/CStyle.java Modified: tools/cstyle/trunk/src/net/sf/japi/cstyle/CStyle.java =================================================================== --- tools/cstyle/trunk/src/net/sf/japi/cstyle/CStyle.java 2007-06-30 08:54:18 UTC (rev 462) +++ tools/cstyle/trunk/src/net/sf/japi/cstyle/CStyle.java 2007-06-30 08:56:52 UTC (rev 463) @@ -86,7 +86,7 @@ * @param filename Name of the file to read from. * @throws IOException In case of I/O problems. */ - public void check(final String filename) throws IOException { + public void check(@NotNull final String filename) throws IOException { check(new File(filename)); } @@ -94,7 +94,7 @@ * @param file File to read from. * @throws IOException In case of I/O problems. */ - public void check(final File file) throws IOException { + public void check(@NotNull final File file) throws IOException { final InputStream in = new FileInputStream(file); try { check(in); @@ -107,7 +107,7 @@ * @param stream Stream to read from. * @throws IOException In case of I/O problems. */ - public void check(final InputStream stream) throws IOException { + public void check(@NotNull final InputStream stream) throws IOException { final BufferedReader in = new BufferedReader(new InputStreamReader(stream, encoding)); check(in); } @@ -116,7 +116,7 @@ * @param in Reader to read from. * @throws IOException In case of I/O problems. */ - public void check(final Reader in) throws IOException { + public void check(@NotNull final Reader in) throws IOException { physicalMode = PhysicalMode.NORMAL; for (int c; (c = in.read()) != -1;) { parse((char) c); @@ -194,8 +194,14 @@ assert false; } // Step 2: Tokenize - switch (physicalMode) { - case NORMAL: + if (physicalMode == PhysicalMode.NORMAL && previousPhysicalMode == PhysicalMode.NORMAL) { + currentToken.append(c); + // tokens to detect: + // keyword + // symbol + // operator + // literal + // separator } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 08:54:19
|
Revision: 462 http://svn.sourceforge.net/japi/?rev=462&view=rev Author: christianhujer Date: 2007-06-30 01:54:18 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Improved documentation. Modified Paths: -------------- site/trunk/src/doc/start.xhtml Modified: site/trunk/src/doc/start.xhtml =================================================================== --- site/trunk/src/doc/start.xhtml 2007-06-30 08:53:24 UTC (rev 461) +++ site/trunk/src/doc/start.xhtml 2007-06-30 08:54:18 UTC (rev 462) @@ -23,7 +23,7 @@ JAPI is a set of Java API extension libraries intended to make life easier for Java application developers. Currently it is targetted on normal Desktop Java (J2SE). JAPI helps you writing <em>internationalized</em> and <em>localized Swing</em> applications with <em>very little effort</em> and very efficient event handling code. - Additionally it contains some useful classes about I/O and XML. + Additionally it contains some useful classes about argument parsing, I/O and XML. Note: JAPI requires <em>J2SE 5.0</em> or later. </p> <h2>News</h2> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <chr...@us...> - 2007-06-30 08:53:35
|
Revision: 461 http://svn.sourceforge.net/japi/?rev=461&view=rev Author: christianhujer Date: 2007-06-30 01:53:24 -0700 (Sat, 30 Jun 2007) Log Message: ----------- Added missing @NotNull / @Nullable annotations. Improved documentation. Modified Paths: -------------- libs/swing-app/trunk/src/net/sf/japi/swing/app/CanLoad.java libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/BookmarkDropTargetAdapter.java libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/BookmarkManager.java libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/Bookmarkable.java progs/jeduca/trunk/src/net/sf/japi/progs/jeduca/jtest/gui/ProgramFrame.java Modified: libs/swing-app/trunk/src/net/sf/japi/swing/app/CanLoad.java =================================================================== --- libs/swing-app/trunk/src/net/sf/japi/swing/app/CanLoad.java 2007-06-30 07:41:21 UTC (rev 460) +++ libs/swing-app/trunk/src/net/sf/japi/swing/app/CanLoad.java 2007-06-30 08:53:24 UTC (rev 461) @@ -19,6 +19,8 @@ package net.sf.japi.swing.app; +import org.jetbrains.annotations.NotNull; + /** Interface to be implemented by classes that are able to load a URL. * @author <a href="mailto:ch...@ri...">Christian Hujer</a> */ @@ -30,6 +32,6 @@ * @param url URL to load * @return <code>true</code> if and only if loading the file was successful */ - boolean load(String url); + boolean load(@NotNull String url); } // interface CanLoad Modified: libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/BookmarkDropTargetAdapter.java =================================================================== --- libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/BookmarkDropTargetAdapter.java 2007-06-30 07:41:21 UTC (rev 460) +++ libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/BookmarkDropTargetAdapter.java 2007-06-30 08:53:24 UTC (rev 461) @@ -28,6 +28,7 @@ import javax.swing.JTree; import javax.swing.tree.TreePath; import org.jetbrains.annotations.Nullable; +import org.jetbrains.annotations.NotNull; import static net.sf.japi.swing.bookmarks.BookmarkTransferable.getBookmarkDataFlavor; /** Class for dropping a bookmark over a JTree managing bookmarks. @@ -36,7 +37,7 @@ public class BookmarkDropTargetAdapter extends DropTargetAdapter { /** {@inheritDoc} */ - public void drop(final DropTargetDropEvent dtde) { + public void drop(@NotNull final DropTargetDropEvent dtde) { System.err.println("drop"); final JTree tree = (JTree) dtde.getDropTargetContext().getComponent(); BookmarkManager.Bookmark dest = getDestBookmark(dtde, tree); @@ -56,7 +57,7 @@ * @param tree JTree to find bookmark in * @return destination bookmark */ - private static BookmarkManager.Bookmark getDestBookmark(final DropTargetDropEvent dtde, final JTree tree) { + @NotNull private static BookmarkManager.Bookmark getDestBookmark(@NotNull final DropTargetDropEvent dtde, @NotNull final JTree tree) { final Point p = dtde.getLocation(); final TreePath tp = tree.getClosestPathForLocation(p.x, p.y); return (BookmarkManager.Bookmark) tp.getLastPathComponent(); @@ -66,7 +67,7 @@ * @param dtde drop event * @return source bookmark */ - @Nullable private static BookmarkManager.Bookmark getSourceBookmark(final DropTargetDropEvent dtde) { + @Nullable private static BookmarkManager.Bookmark getSourceBookmark(@NotNull final DropTargetDropEvent dtde) { final Transferable source = dtde.getTransferable(); try { return (BookmarkManager.Bookmark) source.getTransferData(getBookmarkDataFlavor()); Modified: libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/BookmarkManager.java =================================================================== --- libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/BookmarkManager.java 2007-06-30 07:41:21 UTC (rev 460) +++ libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/BookmarkManager.java 2007-06-30 08:53:24 UTC (rev 461) @@ -55,6 +55,7 @@ import org.w3c.dom.NodeList; import org.w3c.dom.ls.DOMImplementationLS; import org.xml.sax.SAXException; +import org.jetbrains.annotations.NotNull; import net.sf.japi.swing.ActionFactory; import net.sf.japi.swing.IconManager; import net.sf.japi.util.EmptyEnumeration; @@ -82,7 +83,9 @@ /** The ProgramFrame this BookmarkManager manages bookmarks for. */ private Bookmarkable bookmarkable; - /** Create a new BookmarkManager. */ + /** Create a new BookmarkManager. + * @param bookmarkable The bookmarkable to use for this BookmarkManager. + */ public BookmarkManager(final Bookmarkable bookmarkable) { this.bookmarkable = bookmarkable; try { @@ -98,7 +101,7 @@ /** Create a Bookmark ToolBar. * @return toolBar for Bookmarks */ - public JToolBar createBookmarkToolBar() { + @NotNull public JToolBar createBookmarkToolBar() { // Variant 1: JToolBar with JMenuBar with one entry "Lesezeichen" final JToolBar toolBar = new JToolBar(ACTION_FACTORY.getString("bookmarkToolBar.name")); final JMenuBar mb = new JMenuBar(); @@ -142,7 +145,7 @@ /** Create a Bookmark Menu. * @return JMenu for Bookmarks */ - public JMenu createBookmarkMenu() { + @NotNull public JMenu createBookmarkMenu() { final JMenu menu = bookmarks.createMenu(); menu.add(new JMenuItem(manageBookmarks)); return menu; @@ -151,7 +154,7 @@ /** Create a Bookmark ControlPanel. * @return ControlPanel for Bookmarks */ - public JComponent createBookmarkControlPanel() { + @NotNull public JComponent createBookmarkControlPanel() { return new ControlPanel(); } @@ -159,7 +162,7 @@ * @param menu JMenu to attach bookmarks to * @param bookmarks Bookmarks to attach */ - private static void attach(final JMenu menu, final BookmarkFolder bookmarks) { + private static void attach(@NotNull final JMenu menu, @NotNull final BookmarkFolder bookmarks) { for (final Bookmark bookmark : bookmarks) { if (bookmark instanceof BookmarkFolder) { final JMenu newMenu = new JMenu(bookmark); @@ -214,7 +217,7 @@ * @throws IOException in case of I/O problems * @throws ParserConfigurationException in case of XML configuration problems */ - public void save(final String uri) throws IOException, ParserConfigurationException { + public void save(@NotNull final String uri) throws IOException, ParserConfigurationException { final DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); final DocumentBuilder db = dbf.newDocumentBuilder(); final Document doc = db.newDocument(); @@ -232,7 +235,7 @@ * @throws ParserConfigurationException in case of XML configuration problems * @throws SAXException in case of XML document problems */ - public void load(final String uri) throws IOException, ParserConfigurationException, SAXException { + public void load(@NotNull final String uri) throws IOException, ParserConfigurationException, SAXException { final DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); final DocumentBuilder db = dbf.newDocumentBuilder(); final Document doc = db.parse(uri); @@ -277,7 +280,7 @@ /** Title for Bookmark. * @serial include */ - private String title; + @NotNull private String title; /** The folder (parent) of this bookmark. * @serial include @@ -294,7 +297,7 @@ * You must not forget to invoke {@link #setFolder(BookmarkFolder)} in order to make {@link #getParent()} for JTrees working. * @param title title for Bookmark */ - protected Bookmark(final String title) { + protected Bookmark(@NotNull final String title) { setTitle(title); putValue(SMALL_ICON, IconManager.getDefaultIconManager().getIcon(ACTION_FACTORY.getString("bookmark.icon"))); } @@ -302,7 +305,7 @@ /** {@inheritDoc} * @return title of this Bookmark */ - public String toString() { + @NotNull public String toString() { return title; } @@ -326,7 +329,7 @@ /** Set this Bookmark's title. * @param title new title for this Bookmark */ - public void setTitle(final String title) { + public void setTitle(@NotNull final String title) { this.title = title; putValue(NAME, title); } @@ -339,7 +342,7 @@ /** Get this Bookmark's title. * @return Bookmark title */ - public String getTitle() { + @NotNull public String getTitle() { return title; } Modified: libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/Bookmarkable.java =================================================================== --- libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/Bookmarkable.java 2007-06-30 07:41:21 UTC (rev 460) +++ libs/swing-bookmarks/trunk/src/net/sf/japi/swing/bookmarks/Bookmarkable.java 2007-06-30 08:53:24 UTC (rev 461) @@ -21,6 +21,8 @@ import java.awt.Component; import net.sf.japi.swing.app.CanLoad; +import org.jetbrains.annotations.Nullable; +import org.jetbrains.annotations.NotNull; /** Interface for classes that want to interact with the BookmarkManager. * Implement this interface if your class provides information for creating bookmarks. @@ -38,25 +40,27 @@ /** Get the title for the Bookmark. * @return title for Bookmark + * @todo Eventually change to @NotNull */ - String getBookmarkTitle(); + @Nullable String getBookmarkTitle(); /** Get the URL for the Bookmark. * @return url for Bookmark + * @todo Eventually change to @NotNull */ - String getBookmarkURL(); + @Nullable String getBookmarkURL(); /** {@inheritDoc} * Invoked when the user requests to load a Bookmark. * The implementor of this method is itself responsible of handling errors and displaying eventual error messages to the user * @param url URL from bookmark */ - boolean load(final String url); + boolean load(@NotNull String url); /** Get the component which to block for modal dialogs. * It is safe to return <code>null</code>. * @return component */ - Component getBookmarkBlocker(); + @Nullable Component getBookmarkBlocker(); } // interface Bookmarkable Modified: progs/jeduca/trunk/src/net/sf/japi/progs/jeduca/jtest/gui/ProgramFrame.java =================================================================== --- progs/jeduca/trunk/src/net/sf/japi/progs/jeduca/jtest/gui/ProgramFrame.java 2007-06-30 07:41:21 UTC (rev 460) +++ progs/jeduca/trunk/src/net/sf/japi/progs/jeduca/jtest/gui/ProgramFrame.java 2007-06-30 08:53:24 UTC (rev 461) @@ -59,6 +59,7 @@ import net.sf.japi.swing.LookAndFeelManager; import net.sf.japi.swing.bookmarks.BookmarkManager; import net.sf.japi.swing.bookmarks.Bookmarkable; +import org.jetbrains.annotations.NotNull; /** Programmfenster. * @author $Author: chris $ @@ -219,7 +220,7 @@ } /** {@inheritDoc} */ - public boolean load(final String newUrl) { + public boolean load(@NotNull final String newUrl) { boolean okay; try { // TODO: IOManager This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |