From: jprocter Date: Tue, 7 Jun 2005 13:09:41 +0000 (+0000) Subject: jalopy is used for sourcescrub target of build.xml (sourcescrub is not X-Git-Tag: Release_2_0~107 X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=67a30bbaa5190c0bd0b12e521e9465cc46214d56;p=jalview.git jalopy is used for sourcescrub target of build.xml (sourcescrub is not a standard target name;-) --- diff --git a/utils/jalopy/bin/lcp.bat b/utils/jalopy/bin/lcp.bat new file mode 100755 index 0000000..d4ebc44 --- /dev/null +++ b/utils/jalopy/bin/lcp.bat @@ -0,0 +1,8 @@ +SET _CLASSPATHCOMPONENT=%1 +:argCheck +IF %2a==a GOTO gotAllArgs +SHIFT +SET _CLASSPATHCOMPONENT=%_CLASSPATHCOMPONENT% %1 +GOTO argCheck +:gotAllArgs +SET LOCALCLASSPATH=%_CLASSPATHCOMPONENT%;%LOCALCLASSPATH% \ No newline at end of file diff --git a/utils/jalopy/bin/preferences.bat b/utils/jalopy/bin/preferences.bat new file mode 100755 index 0000000..bc58511 --- /dev/null +++ b/utils/jalopy/bin/preferences.bat @@ -0,0 +1,63 @@ +@ECHO OFF +IF NOT "%OS%"=="Windows_NT" GOTO win9xStart + +:winNTStart +@setlocal + +REM Need to check if we are using the 4NT shell... +IF "%eval[2+2]" == "4" GOTO setup4NT + +REM On NT/2K grab all arguments at once +SET JALOPY_CMD_LINE_ARGS=%* +GOTO doneStart + +:setup4NT +SET JALOPYY_CMD_LINE_ARGS=%$ +GOTO doneStart + +:win9xStart +REM Slurp the command line arguments. This loop allows for an unlimited number +REM of arguments (up to the command line limit, anyway). +SET JALOPY_CMD_LINE_ARGS= + +:setupArgs +IF %1a==a GOTO doneStart +SET JALOPY_CMD_LINE_ARGS=%JALOPY_CMD_LINE_ARGS% %1 +SHIFT +GOTO setupArgs + +:doneStart +REM This label provides a place for the argument list loop to break out +REM and for NT handling to skip to. + +:checkJava +SET _JAVACMD=%JAVACMD% +SET LOCALCLASSPATH= +FOR %%i IN ("..\lib\*.jar") do call ".\lcp.bat" %%i + +IF "%JAVA_HOME%" == "" GOTO noJavaHome +IF "%_JAVACMD%" == "" SET _JAVACMD=%JAVA_HOME%\bin\java +GOTO runJalopy + +:noJavaHome +IF "%_JAVACMD%" == "" SET _JAVACMD=java +ECHO. +ECHO Warning: JAVA_HOME environment variable is not set. +ECHO You may need to set the JAVA_HOME environment variable +ECHO to the installation directory of Java. +ECHO. + +:runJalopy +"%_JAVACMD%" -classpath "%LOCALCLASSPATH%" de.hunsicker.jalopy.swing.SettingsDialog %JALOPY_CMD_LINE_ARGS% +GOTO end + +:end +SET LOCALCLASSPATH= +SET _JAVACMD= +SET JALOPY_CMD_LINE_ARGS= + +IF NOT "%OS%"=="Windows_NT" GOTO mainEnd +:winNTend +@endlocal + +:mainEnd diff --git a/utils/jalopy/bin/preferences.sh b/utils/jalopy/bin/preferences.sh new file mode 100755 index 0000000..92593ee --- /dev/null +++ b/utils/jalopy/bin/preferences.sh @@ -0,0 +1,50 @@ +#! /bin/sh + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false; +darwin=false; +case "`uname`" in + CYGWIN*) cygwin=true ;; + Darwin*) darwin=true ;; +esac + +if [ -z "$JAVACMD" ] ; then + if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + else + JAVACMD=java + fi +fi + +if [ ! -x "$JAVACMD" ] ; then + echo "Error: JAVA_HOME is not defined correctly." + echo " We cannot execute $JAVACMD" + exit +fi + +# add in the dependency .jar files +# The jar-files are in the same directory as this scriptfile ! +# So remove the name of this script-file from the path and replace it +# with *.jar +DIRLIBS=${0%/*}/../lib/*.jar +for i in ${DIRLIBS} +do + if [ -z "$LOCALCLASSPATH" ] ; then + LOCALCLASSPATH=$i + else + LOCALCLASSPATH="$i":$LOCALCLASSPATH + fi +done + +# For Cygwin, switch paths to Windows format before running java +if $cygwin; then + JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` + LOCALCLASSPATH=`cygpath --path --windows "$LOCALCLASSPATH"` +fi + +$JAVACMD -classpath "$LOCALCLASSPATH" de.hunsicker.jalopy.swing.SettingsDialog diff --git a/utils/jalopy/docs/acknowledge.html b/utils/jalopy/docs/acknowledge.html new file mode 100755 index 0000000..75f10a4 --- /dev/null +++ b/utils/jalopy/docs/acknowledge.html @@ -0,0 +1,49 @@ + + + + + Acknowledgements + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Acknowledgements

+First and foremost I wish to thank the creators of the free software libraries +I use. Jalopy includes software developed by the +Apache Software Foundation, +the BlueJ Group, +David Brownell, +Michael H. Kay, +the JDOM group, +David Megginson, +Terence Parr, +Slava Pestov, +Aaron M. Renn and +Sun Microsystems, Inc.. +Please refer to Appendix A, Library Dependencies for a more detailed list +and the individual licensing terms. +

+I would like to say a big thanks to Michael Callum, Frank Klomp, Roman Sarychev, +David Beutel, Denis N. Antonioli and Kees Kuip who contributed code. +

+Thanks also to all users who provided feedback, submitted bug reports and requested new +features. +

+A special thanks to Larry Hamel for the initial proof-reading of this manual. +

+Last but not least, I wish to thank the SourceForge +crew for not only hosting the Jalopy web site and providing the collaborative development +infrastructure but also for their help and support in getting things up and running. +

+And finally, my special thanks to the bright light in the big city, whose love has been +a home and a foreign country, the best of both worlds. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/bi01.html b/utils/jalopy/docs/bi01.html new file mode 100755 index 0000000..48cb38c --- /dev/null +++ b/utils/jalopy/docs/bi01.html @@ -0,0 +1,21 @@ + + + + + Bibliography + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Bibliography

[Bloch01] Joshua Bloch. Effective Java. Programming Language Guide. Addison-Wesley, 2001. + ISBN: 0-201-31005-8.

[Friedl97] Jeffrey E. F. Friedl. Mastering Regular Expressions. O'Reilly, 1997. + ISBN: 1-56592-257-3.

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/build.html b/utils/jalopy/docs/build.html new file mode 100755 index 0000000..ac24700 --- /dev/null +++ b/utils/jalopy/docs/build.html @@ -0,0 +1,124 @@ + + + + + Chapter 2. Building + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Chapter 2. Building

+Explains the steps involved in building Jalopy from the sources. +

2.1. Prerequisites

+The following software must be installed separately, in order to build from the +sources: +

Table 2.1. Software needed to build from the sources

Jakarta Ant +Jalopy comes with a simple, Ant-based build system. So you first need to obtain and +install Ant as outlined in the +Ant manual. +The build system is only tested against the Ant 1.5.4 release, but later +releases of Ant may also work. +
Oasis DocBook XML DTD +All documentation is written using DocBook Version 4.2 markup. You can get the DTD +from the +OASIS web site. +Unpack the sources into a folder of your choice and remember this path as it will be +needed for configuration later on. +
An XSLT processor +The DocBook markup needs to be transformed in order to make some user-friendly appearance. +This is done via XSLT and Michael Kay's Saxon is the processor I found working with the +Stylesheet package I use. You should download the current stable production +release from SourceForge (http://saxon.sf.net) +and extract the file saxon.jar into the /lib +folder of your Ant installation directory. I also had to setup saxon to use +Xerces as the XML parser by editing the +META-INF/services/javax.xml.parsers.SAXParserFactory file inside of +saxon.jar and replacing the alfred parser with org.apache.xerces.jaxp.SAXParserFactoryImpl +
DocBook XSL Stylesheets +To perform the markup translation you need Norman Walsh's XSL Stylesheet package. +The version that works for me is 1.62.4. You can get it from SourceForge +(http://docbook.sf.net). +Copy the file extensions/saxon651.jar that +comes with the distribution into the /lib folder of your +Ant installation directory as this file is needed for sophisticated table generation. +
A CVS client (optional) +If you plan to get the sources directly from CVS you need a CVS client. If your system +does not come with one pre-installed (most Linux machines at least have the command-line +client installed by default), you will certainly want to visit any of several good sites +such as http://www.cvshome.org/ +which lists available CVS clients +for different platforms, their strengths and weaknesses. For what it's worth, I prefer +SmartCVS. +

2.2. Building

+The basic steps to build Jalopy from the sources are: +

  1. +Get and install the needed software as outlined in Section 2.1, “Prerequisites”. +Make sure Ant is set up correctly. +

  2. +Get the sources. Either download and unpack the +Jalopy source distribution which +contains the complete Jalopy sources. Or grab the needed modules directly from the +CVS tree.

  3. +Change to the directory where your Jalopy sources reside. You should find a +directory layout somewhat similar to the following (each directory represents a +module; the minimal needed modules are printed in bold): +

    + ..
    +   ant/                  The Ant Plug-in
    +   build/                The Jalopy build system
    +   console/
    +   docu/                 All documentation sources
    +   eclipse/              The Eclipse Plug-in
    +   jbuilder/             The JBuilder Plug-in
    +   jdeveloper/           The JDeveloper Plug-in
    +   jedit/                The jEdit Plug-in
    +   main/                 The core Jalopy sources
    +   netbeans/             The NetBeans/Sun ONE Studio Plug-in
    +

    +Change directory into /build where the master build script +lurks. +

  4. +Adjust the global build properties to match your installation. The build +system uses quite a few properties to control the build process and +specify additional needed resources. You can find and adjust these properties in the file +build.properties. +

    +Luckily you only have to change some common properties to get things running: +

    Common build properties

    DIR.DOCBOOK.XSL

    +Specifies the installation directory of the DocBook XSL Stylesheets package. +Note that you have to specify a protocol, e.g. file:///G:/XML/docbook-xsl-1.62.4. +

    DIR.DOCBOOK.DTD

    +Specifies the path where to find the DocBook XSL DTD. +You have to adjust the default path to match your installation. +

    LIB.PATH.<modulename>

    +Specifies additional library path(s) needed to build a certain module. +You have to adjust the default path(s) to match your installation. +

    PACKAGE.PATH.<libraryname>

    +Specifies the location to a directory containing the package-list file for a +given library. This is optional and only needed by Javadoc to resolve links to +documentation for externally referenced classes. Change the default path(s) +to match your installation. +

  5. +Once everything is set up, you can start a build using ant target +where target describes one of the main build targets (those with a +description, use ant -projecthelp to display +the available targets). Just typing ant will build the Jalopy +core runtime distribution. +

  6. +When a build is done, you can find the created distribution(s) in the +tmp~/dist folder. The build system creates and stores all +intermediate files and subdirectories under the tmp~ +directory. +

  7. +If you make changes to the source code, just run Ant again; this will perform a +faster incremental rebuild of the target. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/comments.html b/utils/jalopy/docs/comments.html new file mode 100755 index 0000000..29c8195 --- /dev/null +++ b/utils/jalopy/docs/comments.html @@ -0,0 +1,117 @@ + + + + + 4.3.6. Comments + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.6. Comments

+Controls how Jalopy handles certain types of comments. +

+As far as Jalopy is concerned, there are five types of comments: + +

  1. +Single-line comments // text +

    +An end-of-line comment: all text from the ASCII characters +// to the end of the line +

    Example 4.130. Single-line comment

    +// [PENDING] this should be part of the ErrorManager
    +

  2. +Multi-line comments /* text */ +

    +A traditional comment: all text from the ASCII characters /* +to the ASCII characters */ +

    Example 4.131. Multi-line comment

    +/* public int getSubregionStartOffset(int line, int subregion)
    +{
    +	ChunkCache.LineInfo[] lineInfos = chunkCache.getLineInfosForPhysicalLine(line);
    +	return buffer.getLineStartOffset(lineInfos[subregion].physicalLine)
    +		+ lineInfos[subregion].offset;
    +} */
    +

  3. +Javadoc comments /** text */ +

    +A documentation comment: actually a special kind of +multi-line comment as defined by the Sun Javadoc specification; +all text from the ASCII characters /** +to the ASCII characters */ +

    Example 4.132. Javadoc comment

    +/**
    + * A scroll listener will be notified when the text area is scrolled, either
    + * horizontally or vertically.
    + *
    + * @author Slava Pestov
    + * @since jEdit 3.2pre2
    + */
    +

  4. +Separator comments //~ text +

    +A Jalopy-specific separator comment: actually a special kind of single-line comment; +all text from the ASCII characters +//~ to the end of the line +

    Example 4.133. Separator comment

    +//~ Inner classes .......................................
    +

  5. +Pragma comments //J[directive] +

    +A Jalopy-specific control comment: actually a special kind of single-line comment; +all text from the ASCII characters +//J[-|+] to the end of the line +

    Example 4.134. Control comments

    +//J-
    +    if {condition()) return value;
    +//J+
    +

    +Currently, Jalopy recognizes two pragma comments: //J- and //J+ +

    +With these comments you can disable formatting for certain code sections. +//J- tells Jalopy to disable formatting until //J+ +will enable it again. Note that these comments can only be used in conjunction! Omitting the //J+ will certainly produce errors. +

+

4.3.6.1. Remove

+Controls whether and what types of comments should be removed during the +formatting process. +

  • +Single-line comments +

    +If enabled, removes all single-line comments found in a source file. +

  • +Multi-line comments +

    +If enabled, removes all multi-line comments (sometimes called block comments) found in a source file. +

  • +Javadoc comments +

    +If enabled, removes all Javadoc comments found in a source file. This may prove +useful in conjunction with the Javadoc auto-generation capabilities +to build Javadoc from scratch. +

4.3.6.2. Format

+Controls the reformatting of comments. +

  • +Multi-line comments +

    +Enables the reformatting of multi-line comments. Only affects the leading +asterixes of consecutive comment lines as shown in the examples below. +

    Example 4.135. Multi-line comment

    +/* Multi-line
    +* comment.
    +* end.
    +*/
    +

    Example 4.136. Multi-line comment (reformatted)

    +/* Multi-line
    + * comment.
    + * end.
    + */
    +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/contact.html b/utils/jalopy/docs/contact.html new file mode 100755 index 0000000..62ebad7 --- /dev/null +++ b/utils/jalopy/docs/contact.html @@ -0,0 +1,33 @@ + + + + + Jalopy - Contact + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
+ This page generated: June 8 2004

Trackers

+Please use the following SourceForge trackers to submit bug reports or post +feature requests: +

Mailing Lists

+If you want to provide feedback on this software or stay current with the +latest development, you may want to join one of the Jalopy mailing lists. +

ListSubscribe/UnsubcribeBrowse Archives
jalopy-announce

A high-level +announcements list, for things like major release notifications +or important bug-fixes. This is not a discussion list, and is not open to +public posting. Traffic is expected to be very low. +

+If you're interested in +Jalopy, it is recommended you subscribe at a minimum to this list. +

Subscribe/UnsubscribeBrowse archives
jalopy-user

+Intended for +users to ask questions, share knowledge, and discuss general Jalopy related issues. +

Subscribe/UnsubscribeBrowse archives
jalopy-development

+Hosts development related discussions. +

Subscribe/UnsubscribeBrowse archives
to top

\ No newline at end of file diff --git a/utils/jalopy/docs/contributors.html b/utils/jalopy/docs/contributors.html new file mode 100755 index 0000000..c956525 --- /dev/null +++ b/utils/jalopy/docs/contributors.html @@ -0,0 +1,31 @@ + + + + + Jalopy - Contributors + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
+ This page generated: June 8 2004

Contributors

+The following people have contributed to the Jalopy project: +

  • +Michael Callum +
  • +Frank Klomp +
  • +Larry Hamel +
  • +Roman Sarychev +
  • +Denis N. Antonioli +
  • +David Beutel +
  • +Kees Kuip +
to top

\ No newline at end of file diff --git a/utils/jalopy/docs/dedication.html b/utils/jalopy/docs/dedication.html new file mode 100755 index 0000000..eb86ec6 --- /dev/null +++ b/utils/jalopy/docs/dedication.html @@ -0,0 +1,22 @@ + + + + + Dedication + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Dedication

+This work is inspired by and dedicated to the poet who writes: +

Tabacaria

Não sou nada.
Nunca serei nada.
Não posso querer ser nada.
À parte isso, tenho em mim todos os sonhos do mundo.
 
Janelas do meu quarto,
Do meu quarto de um dos milhões do mundo que ninguém sabe quem é
(E se soubessem quem é, o que saberiam?),
 
Dais para o mistério de uma rua cruzada constantemente por gente,
Para uma rua inacessível a todos os pensamentos,
Real, impossivelmente real, certa, desconhecidamente certa,
Com o mistério das coisas por baixo das pedras e dos seres,
Com a morte a pôr humidade nas paredes e cabelos brancos nos homens,
Com o Destino a conduzir a carroça de tudo pela estrada de nada.
Estou hoje vencido, como se soubesse a verdade.
Estou hoje lúcido, como se estivesse para morrer,
E não tivesse mais irmandade com as coisas
Senão uma despedida, tornando-se esta casa e este lado da rua
A fileira de carruagens de um comboio, e uma partida apitada
De dentro da minha cabeça,
E uma sacudidela dos meus nervos e um ranger de ossos na ida.
 
Estou hoje perplexo como quem pensou e achou e esqueceu.
Estou hoje dividido entre a lealdade que devo
Estou hoje dividido entre a lealdade que devo
E à sensação de que tudo é sonho, como coisa real por dentro.
 
Falhei em tudo.
Como não fiz propósito nenhum, talvez tudo fosse nada.
A aprendizagem que me deram,
Desci dela pela janela das traseiras da casa,
Fui até ao campo com grandes propósitos.
Mas lá encontrei só ervas e árvores,
E quando havia gente era igual à outra.
Saio da janela, sento-me numa cadeira. Em que hei-de pensar?
 
Que sei eu do que serei, eu que não sei o que sou?
Ser o que penso? Mas penso ser tanta coisa!
E há tantos que pensam ser a mesma coisa que não pode haver tantos!
Gênio? Neste momento
Cem mil cérebros se concebem em sonho gênios como eu,
E a história não marcará, quem sabe?, nem um,
Nem haverá senão estrume de tantas conquistas futuras.
Não, não creio em mim.
Em todos os manicômios há doidos malucos com tantas certezas!
Eu, que não tenho nenhuma certeza, sou mais certo ou menos certo?
Não, nem em mim...
 
Em quantas mansardas e não-mansardas do mundo
Não estão nesta hora génios-para-si-mesmos sonhando?
Quantas aspirações altas e nobres e lúcidas -
Sim, verdadeiramente altas e nobres e lúcidas -,
E quem sabe se realizáveis,
Nunca verão a luz do sol real nem acharão ouvidos de gente?
O mundo é para quem nasce para o conquistar
E não para quem sonha que pode conquistá-lo, ainda que tenha razão. +
Tenho sonhado mais que o que Napoleão fez.
Tenho apertado ao peito hipotético mais humanidades do que Cristo,
Tenho feito filosofias em segredo que nenhum Kant escreveu.
Mas sou, e talvez serei sempre, o da mansarda,
Ainda que não more nela;
Serei sempre o que não nasceu para isso;
Serei sempre só o que tinha qualidades;
Serei sempre o que esperou que lhe abrissem a porta ao pé de uma parede sem porta
E cantou a cantiga do Infinito numa capoeira,
E ouviu a voz de Deus num poço tapado.
Crer em mim? Não, nem em nada.
Derrame-me a Natureza sobre a cabeça ardente
O seu sol, a sua chuva, o vento que me acha o cabelo,
E o resto que venha se vier, ou tiver que vir, ou não venha.
Escravos cardíacos das estrelas,
Conquistamos todo o mundo antes de nos levantar da cama;
Mas acordamos e ele é opaco,
Levantamo-nos e ele é alheio,
Saímos de casa e ele é a terra inteira,
Mais o sistema solar e a Via Láctea e o Indefinido.
 
(Come chocolates, pequena;
Come chocolates!
Olha que não há mais metafísica no mundo senão chocolates.
Olha que as religiões todas não ensinam mais que a confeitaria.
Come, pequena suja, come!
Pudesse eu comer chocolates com a mesma verdade com que comes!
Mas eu penso e, ao tirar o papel de prata, que é de folhas de estanho,
Deito tudo para o chão, como tenho deitado a vida.)
 
Mas ao menos fica da amargura do que nunca serei
A caligrafia rápida destes versos,
Pórtico partido para o Impossível.
Mas ao menos consagro a mim mesmo um desprezo sem lágrimas,
Nobre ao menos no gesto largo com que atiro
A roupa suja que sou, sem rol, pra o decurso das coisas,
E fico em casa sem camisa.
 
(Tu, que consolas, que não existes e por isso consolas,
Ou deusa grega, concebida como estátua que fosse viva,
Ou patrícia romana, impossivelmente nobre e nefasta,
Ou princesa de trovadores, gentilíssima e colorida,
Ou marquesa do século dezoito, decotada e longínqua,
Ou cocote célebre do tempo dos nossos pais,
Ou não sei quê moderno - não concebo bem o quê -,
Tudo isso, seja o que for, que sejas, se pode inspirar que inspire!
Meu coração é um balde despejado.
Como os que invocam espíritos invocam espíritos invoco
A mim mesmo e não encontro nada.
Chego à janela e vejo a rua com uma nitidez absoluta.
Vejo as lojas, vejo os passeios, vejo os carros que passam,
Vejo os entes vivos vestidos que se cruzam,
Vejo os cães que também existem,
E tudo isto me pesa como uma condenação ao degredo,
E tudo isto é estrangeiro, como tudo.)
 
Vivi, estudei, amei, e até cri,
E hoje não há mendigo que eu não inveje só por não ser eu.
Olho a cada um os andrajos e as chagas e a mentira,
E penso: talvez nunca vivesses nem estudasses nem amasses nem cresses
(Porque é possível fazer a realidade de tudo isso sem fazer nada disso);
Talvez tenhas existido apenas, como um lagarto a quem cortam o rabo
E que é rabo para aquém do lagarto remexidamente.
 
Fiz de mim o que não soube,
E o que podia fazer de mim não o fiz.
O dominó que vesti era errado. Conheceram-me logo por quem não era e não desmenti, e perdi-me.
Quando quis tirar a máscara,
Estava pegada à cara.
Quando a tirei e me vi ao espelho,
Já tinha envelhecido.
Estava bêbado, já não sabia vestir o dominó que não tinha tirado.
Deitei fora a máscara e dormi no vestiário
Como um cão tolerado pela gerência
Por ser inofensivo
E vou escrever esta história para provar que sou sublime.
 
Essência musical dos meus versos inúteis,
Quem me dera encontrar-te como coisa que eu fizesse,
E não ficasse sempre defronte da Tabacaria de defronte,
Calcando aos pés a consciência de estar existindo, Como um tapete em que um bêbado tropeça
Ou um capacho que os ciganos roubaram e não valia nada.
 
Mas o dono da Tabacaria chegou à porta e ficou à porta.
Olho-o com o desconforto da cabeça mal voltada
E com o desconforto da alma mal-entendendo.
Ele morrerá e eu morrerei.
Ele deixará a tabuleta, e eu deixarei versos.
A certa altura morrerá a tabuleta também, e os versos também.
Depois de certa altura morrerá a rua onde esteve a tabuleta,
E a língua em que foram escritos os versos.
Morrerá depois o planeta girante em que tudo isto se deu.
Em outros satélites de outros sistemas qualquer coisa como gente
Continuará fazendo coisas como versos e vivendo por baixo de coisas como tabuletas,
Sempre uma coisa defronte da outra,
Sempre uma coisa tão inútil como a outra,
Sempre o impossível tão estúpido como o real,
Sempre o mistério do fundo tão certo como o sono de mistério da superfície,
Sempre isto ou sempre outra coisa ou nem uma coisa nem outra.
 
Mas um homem entrou na Tabacaria (para comprar tabaco?),
E a realidade plausível cai de repente em cima de mim.
Semiergo-me enérgico, convencido, humano,
E vou tencionar escrever estes versos em que digo o contrário.
 
Acendo um cigarro ao pensar em escrevê-los
E saboreio no cigarro a libertação de todos os pensamentos.
Sigo o fumo como uma rota própria,
E gozo, num momento sensitivo e competente,
A libertação de todas as especulações
E a consciência de que a metafísica é uma consequência de estar mal disposto.
 
Depois deito-me para trás na cadeira
E continuo fumando.
Enquanto o Destino mo conceder, continuarei fumando.
 
(Se eu casasse com a filha da minha lavadeira
Talvez fosse feliz.)
Visto isto, levanto-me da cadeira. Vou à janela.
O homem saiu da Tabacaria (metendo troco na algibeira das calças?).
Ah, conheço-o: é o Esteves sem metafísica.
(O dono da Tabacaria chegou à porta.)
Como por um instinto divino o Esteves voltou-se e viu-me.
Acenou-me adeus gritei-lhe Adeus ó Esteves!, e o universo
Reconstruiu-se-me sem ideal nem esperança, e o dono da Tabacaria sorriu.
to top

\ No newline at end of file diff --git a/utils/jalopy/docs/dependencies.html b/utils/jalopy/docs/dependencies.html new file mode 100755 index 0000000..0dd6ba3 --- /dev/null +++ b/utils/jalopy/docs/dependencies.html @@ -0,0 +1,27 @@ + + + + + Appendix A. Library Dependencies + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Appendix A. Library Dependencies

+Depending on the distribution, Jalopy depends on some or all of the following +freely available libraries: +

Table A.1. Library dependencies

Name:AElfred XML Parser 1.2
Author:David Brownell, Michael H. Kay, Microstar Software Ltd.
License:GNU General Public License
Info:The parser is taken from the Saxon 6.5.2 release.
URL:http://sf.net/projects/saxon/
  
Name:ANTLR Parser Generator 2.7.2a2
Author:jGuru.com (MageLang Institute), project lead by Terence Parr
License:Custom, Public Domain
Info:Contains some changes and fixes to make it work with Jalopy, re-packaged +to avoid classpath clashes. +
URL:http://www.antlr.org/
  
Name:GNU getopt Java port 1.0.9
Author:Aaron M. Renn
License:GNU General Public License
URL:http://www.urbanophile.com/~arenn/hacking/download.html
  
Name:JAXP Java API for XML Processing 1.2
Author:Sun Microsystems, Inc.
License:Apache Software License
URL:http://java.sun.com/xml/
  
Name:JDOM XML API 1.0 Beta 8
Author:JDOM Group, lead by Jason Hunter and Brett McLaughlin
License:BSD/Apache style
URL:http://www.jdom.org/
  
Name:log4j logging toolkit 1.2.6
Author:Apache Software Foundation
License:Apache Software License
Info:Jalopy specifically needs 1.2.6 or above as I use an accessor that was +only introduced with 1.2.6
URL:http://jakarta.apache.org/log4j/
  
Name:Moe Editor 1.2.0
Author:BlueJ Group at Monash University, Slava Pestov
License:Public Domain
Info:Jalopy incorporates a stripped down version of the syntax package included in the +Moe sources +
URL:http://www.bluej.org/
  
Name:Oro Regular Expressions 2.0.6
Author:Apache Software Foundation
License:Apache Software License
URL:http://jakarta.apache.org/oro/
  
Name:SAX Simple API for XML 2.0.1
Author:David Megginson, David Brownell
License:Public Domain
URL:http://www.saxproject.org/
  

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/docs.html b/utils/jalopy/docs/docs.html new file mode 100755 index 0000000..430271c --- /dev/null +++ b/utils/jalopy/docs/docs.html @@ -0,0 +1,30 @@ + + + + + Jalopy - Documentation + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Documentation

+Jalopy comes with a complete and (hopefully) useful manual. It is mostly driven by +example as I find this the simplest approach to explain the myriad of switches. +

+Note that the documentation is a work-in-progress. It could definitely benefit +from your feedback. I'm no native speaker and providing good documentation is +the hardest part for me regarding this project. All remarks, corrections, additions... are +highly welcome. +

+Either use the navigation bar at the top of this page or follow this link to +access the user manual: http://jalopy.sf.net/manual.html +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/download.html b/utils/jalopy/docs/download.html new file mode 100755 index 0000000..ef87b2d --- /dev/null +++ b/utils/jalopy/docs/download.html @@ -0,0 +1,31 @@ + + + + + Jalopy - Downloads + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
+ This page generated: June 8 2004

Downloads

+Download your copy of Jalopy today! +

+Jalopy comes in several flavors. End users most notably want to choose +between one of the available Plug-in bundles. Each bundle provides the integration +with exactly one application. Note that starting with 1.0b6 only the Console Plug-in +provides command line capabilities! +

+Read the change history for up-to-date +information about the changes in the latest release. +

Plug-ins

PackagesSizeDateDescription
Ant >= 1.4 (.zip)??? KB06/08/2004Ant task, contains Jalopy 1.0b11
Console (.zip)??? KB06/08/2004Command line interface, contains Jalopy 1.0b11
Eclipse >= 2.0 (.zip)??? KB06/08/2004Eclipse integration, contains Jalopy 1.0b11
JBuilder >= 5.0 (.zip)??? KB06/08/2004JBuilder integration, contains Jalopy 1.0b11
JDeveloper 9i (.zip)??? KB06/08/2004JDeveloper integration, contains Jalopy 1.0b11
jEdit >= 4.1pre1 (.zip)??? KB06/08/2004jEdit integration, contains Jalopy 1.0b11
NetBeans >= 3.3 (.zip), Sun ONE Studio 4 +??? KB06/08/2004NetBeans/Sun ONE Studio integration, contains Jalopy 1.0b11

Sources

PackagesSizeDateDescription
Jalopy 1.0b11 (.src.tar.gz)??? KB06/08/2004Contains the complete Jalopy 1.0b11 sources (core runtime + all Plug-ins)

+Jalopy 1.0 +

PackagesSizeDateDescription
Jalopy 1.0b11 (.zip)??? KB06/08/2004Jalopy core runtime, for users who want to integrate Jalopy into their own applications

+Prior versions can be obtained through the SourceForge file release area: +http://sourceforge.net/project/showfiles.php?group_id=45216 +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/environment.html b/utils/jalopy/docs/environment.html new file mode 100755 index 0000000..728cc77 --- /dev/null +++ b/utils/jalopy/docs/environment.html @@ -0,0 +1,73 @@ + + + + + 4.3.8. Environment + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.8. Environment

+Lets you specify/view environment variables. Environment variables can be used +in headers, footers and Javadoc templates to form variable expressions that will +be resolved during printing. I call this process variable interpolation. +

+Environment variables are simple key/value pairs. Valid keys take the form +([a-zA-Z_][a-zA-Z0-9_.])+ and are case-sensitive. Values can be +freely choosen. +

Example 4.142. Sample environment variables

+author = <a href="http://jalopy.sf.net/contact.html">Marco Hunsicker</a> +
+project = Jalopy Java Source Code Formatter +

4.3.8.1. User environment variables

+Lets you specify you're user specific environment variables. Use the +Add... and Remove buttons to +add or remove items to and from the list. +

4.3.8.2. System environment variables

+All system environment variables are automatically available as well but +cannot be changed from within Jalopy. +

4.3.8.3. Local environment variables

Additionaly, Jalopy provides some local variables that are automatically set +depending on the execution context.

+The current list of valid local variables reads as follows: +

Table 4.1. Local environment variables

fileThe absolute path of the currently processed Java file (e.g. /usr/projects/test/MyFile.java)
fileNameThe name of the currently processed Java file (e.g. MyFile.java)
fileFormatA string represention of the file format that will be used to write a file (e.g. UNIX or DOS)
packageThe package name of the currently processed Java file (e.g. com.foo.mypackage)
conventionThe name of the currently active code convention (as specified in the settings)
tabSizeThe current indentation setting (as specified in the settings)
objectTypeOnly applies to Javadoc templates: Holds the type name of the class for a constructor.
paramTypeOnly applies to Javadoc templates: Holds the type name of a parameter.
exceptionTypeOnly applies to Javadoc templates: Holds the type name of a throws clause.

4.3.8.4. Usage

+Once defined, variables can then be enclosed with the dollar sign to form variable expressions. +Variable expressions thus take the form $([a-zA-Z_][a-zA-Z0-9_.]+)$. +

+During printing these expressions will be interpolated and +the value of the variable inserted into the output file. +

Example 4.143. Header template with environment variable expressions

+//==============================================================================
+// file :       $fileName$
+// project:     $project$
+//
+// last change: date:       $Date$
+//              by:         $Author$
+//              revision:   $Revision$
+//------------------------------------------------------------------------------
+// copyright:   BSJT Software License (see class documentation)
+//==============================================================================
+

Example 4.144. Header after interpolation

+//==============================================================================
+// file :       Byte.java
+// project:     bsjt-rt
+//
+// last change: date:       $Date$
+//              by:         $Author$
+//              revision:   $Revision$
+//------------------------------------------------------------------------------
+// copyright:   BSJT Software License (see class documentation)
+//==============================================================================
+

+As you see with the above example, if a variable is not defined, Jalopy won't +touch the expression and simply preserve the original content. This way Jalopy +works nicely with other source code tools and SCM products. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/faq.html b/utils/jalopy/docs/faq.html new file mode 100755 index 0000000..dc2cd8a --- /dev/null +++ b/utils/jalopy/docs/faq.html @@ -0,0 +1,89 @@ + + + + + Jalopy - FAQ + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004
Q:

+How do I report a bug I have found in Jalopy? +

A:

+To be as helpful as possible to the Jalopy developer team and other users, you should use +the +bug tracker database that the Jalopy project maintains on the +SourceForge web site. You do need to be a SourceForge +member to post a bug report. +

+Before posting a bug report, spend a few moments searching the bug database to see if a +similar report has already been made. The bug tracker has a search facility that will let +you search for bug reports using a variety of criteria. If you find a similar bug report, +and you have additional information to contribute, post a comment to the report. Only if +you do not find a similar bug report, submit a new one. +

Q:

+What information should I include in a bug report? +

A:

+The web form in the bug tracker report provides several fields for +submitting information. If you are unsure about a particular +item, leave it at the default setting provided in the form. +

+The more important fields are “Category”, +“Summary” and the “Initial comment”. +

+When you write your initial comment describing the bug, you +should specify the versions of Jalopy, the Plug-in environment, the Java platform and +operating system you are using. +

+Be as specific as possible. If you encounter stack traces, attach them. If you have +problems formatting a specific file, locate the cause of the error and attach +the code section as a text file. Also attach your code convention as many errors only +occur with a certain settings combination. +

+A more typical example should look like: +

+I newly installed jalopy-1.0b9 on Windows NT with German locales, Sun JDK 1.3.1_05.
+I upgraded property file from jalopy-1.0b7 via Import/Export.
+
+When starting the jalopy settings dialog, I always have problems
+when I am on the "Sorting" panel. No entries are shown. Maybe
+this is a similar problem.
+
+I tried with different files. Always the same result.
+
+Using the Ant task (0.3.3 with Ant 1.4.1), I get a stack trace as attached. I attached
+my code convention also.
+

+The attached stack trace could read as follows: +

+[jalopy] Jalopy Java Source Code Formatter 1.0b9
+[jalopy] Format 1 source file
+[jalopy] X:\beans\booking\BookingService.java:0:0:
+Parse
+[jalopy] X:\beans\booking\BookingService.java:0:0:parsing took 170
+[jalopy] X:\beans\booking\BookingService.java:0:0:transform
+[jalopy] X:\beans\booking\BookingService.java:0:0:
+java.lang.NullPointerException
+[jalopy] java.lang.NullPointerException
+at de.hunsicker.jalopy.lang.Transformation.addSiblings(Transformation.java:167)
+at de.hunsicker.jalopy.lang.Transformation.sortDeclarations(Transformation.java:534)
+at de.hunsicker.jalopy.lang.Transformation.sort(Transformation.java:104)
+at de.hunsicker.jalopy.lang.Transformation.apply(Transformation.java:64)
+at de.hunsicker.jalopy.lang.JavaRecognizer.transform(JavaRecognizer.java:451)
+at de.hunsicker.jalopy.lang.JavaRecognizer.getParseTree(Java Recognizer.java:173)
+

+The given information made it quite obvious that the auto-conversion of the code +convention format from 1.0b7 to 1.0b9 failed for some reason. +

+Looking further at the supplied code convention revealed that the value of the sorting +key was invalid and the actual cause was easy to spot. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/features.html b/utils/jalopy/docs/features.html new file mode 100755 index 0000000..d95e444 --- /dev/null +++ b/utils/jalopy/docs/features.html @@ -0,0 +1,89 @@ + + + + + Jalopy - Feature list + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Feature list

  • +distributed settings support - share one code convention across multiple machines/platforms +
  • +easy switching between several code conventions +
  • +several pre-configured brace styles (C, Sun, GNU), but fully user-configurable +
  • +auto-insertion/removal of obsolete braces +
  • +special empty braces handling +
  • +wide range of whitespace options for method declarations/calls, brackets, parentheses, operators, delimeters... +
  • +prepending of leading whitespace before every line +
  • +powerful indentation/alignment capabilities +
  • +configurable line wrapping +
  • +controlable amount of blank lines between certain sections, blocks, statements... +
  • +comment removal for all sorts of comments +
  • +special comments to prohibit formatting for certain pieces of code +(uses the Jindent syntax to retain backward compatibility) +
  • +auto-insertion of missing Javadoc comments (selectively configurable for the +different access levels) with variable interpolation +
  • +auto-removal/insertion/correction of obsolete/missing/wrong Javadoc standard tags +
  • +auto-insertion of parentheses around expressions to make operator precedence obvious +
  • +auto-insertion of a serial version UID for serializable classes +
  • +sorting of class/interface/variable/constructor/method declarations +
  • +sorting of access modifiers +
  • +insertion of separation comments between class/interface/variable/constructor/method declarations +
  • +insertion of custom header/footer templates at the begin/end of every file (with variable interpolation) +
  • +sorting/grouping of import declarations +
  • +import optimization: expansion of on-demand import declarations to several +single-type declarations (and vice versa). As of today only implemented for +the Ant and JBuilder Plug-in +
  • +configurable message output +
  • +numbered backups (1-30) +
  • +multi-processor support +
  • +client API to make integration with other tools easy +
  • +graphical application to customize the settings (with live-preview) +
  • +powerful command line interface with regular expression filtering (Console Plug-in) +
  • +several Plug-ins to integrate with common Java applications (current set includes +Ant, +Eclipse, +JBuilder, +JDeveloper, +jEdit and +NetBeans/Sun ONE Studio) +
  • +"OSI Certified Open Source Software" + software, released under a BSD License
to top

\ No newline at end of file diff --git a/utils/jalopy/docs/footer.html b/utils/jalopy/docs/footer.html new file mode 100755 index 0000000..6608528 --- /dev/null +++ b/utils/jalopy/docs/footer.html @@ -0,0 +1,24 @@ + + + + + 4.3.11. Footer + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.11. Footer

+Controls the printing of footers. Refer to Section 4.3.10, “Header” for an +explanation of the different options. +

+Note that Jalopy always prints one trailing empty line after the footer. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/header.html b/utils/jalopy/docs/header.html new file mode 100755 index 0000000..7b9eb77 --- /dev/null +++ b/utils/jalopy/docs/header.html @@ -0,0 +1,98 @@ + + + + + 4.3.10. Header + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.10. Header

+Controls the printing of headers. It is always a good idea (and often a +recommendation) to include a copyright notice at the top of every source file +for a given project. +

Example 4.148. Typical header template

+/*
+ *                 Sun Public License Notice
+ *
+ * The contents of this file are subject to the Sun Public License
+ * Version 1.0 (the "License"). You may not use this file except in
+ * compliance with the License. A copy of the License is available at
+ * http://www.sun.com/
+ *
+ * The Original Code is NetBeans. The Initial Developer of the Original
+ * Code is Sun Microsystems, Inc. Portions Copyright 1997-2000 Sun
+ * Microsystems, Inc. All Rights Reserved.
+ */
+

Headers and Javadoc comments

+Be aware that Jalopy currently does not treat the header comments any special. +If you're going to use a Javadoc comment (see Section 4.3.9, “Javadoc”) for +your header and have the Javadoc parsing enabled, you will see your header +reformatted. Therefore, you should only use multi-line comments +(like in the example above). +

4.3.10.1.  +Options +

+Lets you control the different header options. +

4.3.10.1.1. General
  • +Use Header +

    +Enables or disables the insertion of a header template at the top of every +processed source file. +

  • +Smart Mode +

    +Lets you specify the number of single-line comments before the first node +(either a package/import statement or a class/interface declaration) that +should be recognized as part of a header and therefore removed. A size +equal to zero, means Smart Mode will be disabled. +

4.3.10.1.2. Delete Headers

+To avoid header duplication, you have to specify at least one identify key +that can be used to uniquely recognize your header template. That way an +existing header can be removed before a new one is inserted. +

+A good key for the template mentioned above would be +Sun Public License Notice. +Most typically this will be your company's name. +

+You can specify several keys to make it easy to switch between headers. Specify +both a key for the old header that is to be removed and for your new header that +should be inserted. This way, you are sure that even new additions that happens +to contain the old header (maybe checked out from some SCM) are +treated correctly. +

  • +Add... +

    +Adds a new identify key to the list of keys. +

  • +Remove +

    +Removes the currently selected key from the list. +

4.3.10.1.3. Blank lines

+To separate the header from the rest of the source code, you may want to +specify the blank lines before and after the header. +

  • +Before +

    +Number of blank lines to insert before the header template. +

  • +After +

    +Number of blank lines to insert after the header template. +

4.3.10.2.  +Text +

+Insert your header template here. +

+You can use variable expressions throughout the header text. Read +Section 4.3.8, “Environment” for more information about this feature. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/history.html b/utils/jalopy/docs/history.html new file mode 100755 index 0000000..b4a6350 --- /dev/null +++ b/utils/jalopy/docs/history.html @@ -0,0 +1,1002 @@ + + + + + Jalopy - Change history + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

1.0 Beta 10 (2002-11-14)

  1. +New Features + +
    • +Work started to provide a FAQ. There is currently only one topic: How one should submit a +bug report +

  2. +Bug fixes + +
    • +Newlines after case statements were not printed (as always: only with Sun brace style) +Reported by Sebastian Eigner +(#638369) +
    • +In certain cases the indentation after printing assignments was not correct. Reported by +Grzegorz Pilarczyk +(#638279) +
    • +Array types were not correctly printed when they contained more complicated expressions. +Reported by Benni Mas +(#638355) +
    • +The settings format was not correctly updated from 1.0b7 to 1.0b8. Reported by +Marc Gerstmair +(#637864) +
    • +Code conventions were exported with platform specific encodings which could easily cause +harm. Additionally no XML declaration was printed. Now UTF-8 is used +and the declaration printed. Reported by Tim Moore +(#637262) +
    • +The wrapper scripts only worked when the full pathname to the script-files were used. +Reported and fixed by Kees Kuip +(#637915). +Thanks +
    • +Blank lines before blocks without associated block statements +(I call them freestanding blocks) were not printed +
    • +Additional semicolon(s) after the last import statement caused the blank lines logic to +fail, no blank lines were printed for such a (rare) case +

  3. +Changes + +
    • +JBuilder Plug-in: the Plug-in now displays an error message if no compatible log4j version +could be found in the classpath and shows a workaround for the problem +

1.0 Beta 9 (2002-11-12)

  1. +New Features + +

    +All aforementioned features were requested, sponsored and thoroughly tested by the German +Techniker Krankenkasse. Hurray! +

    • +The sources have been internationalized. If you're willing to provide translations of the +used message bundles, please contact me +
    • +Jalopy now contains a simple Code Inspector that is able to inspect your sources for +naming convention violations and possible code weaknesses. See the +Code Inspector chapter in the manual +
    • +New history methods that uses checksums to better handle change detection for files. +See History section. Very cool feature +contributed by Michael Callum +
    • +Javadoc tag checking for @throws tags can now be enabled +separately. See Correct @throws tags
    • +Array type brackets may now be printed after the identifier. +See Misc section. +Requested by John Zukowski +(#599239) +
    • +You can now specify whether Jalopy should insert a trailing empty line at the +end of files in order to avoid problems with certain text formatters and processors. +See Misc section. Note that +Jalopy always inserts a trailing newline after EOF-comments (like footers). +Requested by David Karr +(#589696) +
    • +The order of import statement groups is now user configurable. See Import section. +Requested by Jürgen Ebert +(#591904) +
    • +The Format menu item now appears in the context menu of the Content +Pane too +
    • +Auto-correction for Javadoc @throws tags can now be +controlled separately. See Correct @throws tags for insight +
    • +NetBeans Plug-in: the Format action is now available for Servlet nodes too +
    • +JBuilder Plug-in: the Format item it now available in the context menu of content tab pane too +
    • +JBuilder Plug-in: Breakpoints and Bookmarks are restored after formatting +
    • +JDeveloper Plug-in: the Plug-in has been completely rewritten. Formatting works for +workspaces too, the message output is displayed in a nice tree view. And the whole thing +is now compatible with JDeveloper 9.0.3 +
    • +The core engine is now able to track positions. The IDE Plug-ins are therefore now able +to restore the mouse pointer correctly (it will be positioned before the line with the +node that was nearest to the last caret position) +

  2. +Bug fixes + +
    • +The cleanup of the backup directory could lead to NPE. Reported by Mike Dubman +(#617942) +
    • +The output of array initializers has been improved. Reported by Kate Rhodes +(#617684) +
    • +Important statements collapsing failed because of incompatible parsetree changes between 1.0b7 and 1.0b8. Reported by Mark Ralph +(#617608) +
    • +Handling of Javadoc comments failed for methods/ctors returning an array type. Reported by Magnus Ihse +(#615039) +
    • +The problem with wrong indentation after assignments has gone. Reported by Timo Carl +(#612049) +
    • Treat different option has been corrected to work with all styles. Reported by Eric Lamontagne +(#611182) +
    • +I've fixed some cases where Jalopy produced trailing whitespace on wrapping lines. There may still be others... +Reported by Ralf Wiebicke +(#607697) +
    • +The Javadoc printer failed to output HTML definition lists correctly. Reportey by +David Cooper +(#607416) +
    • +The Javadoc printer failed to output HTML defintion lists correcty. Reportey by +David Cooper +(#607416) +
    • +Array initializers inside statements were not printed correctly. Reported by +Dirk Hoffmann +(#607303) +
    • +Variable macros did (as documented) not work for names like user.name. Reported by +Don Johnson +(#606173) +
    • +Empty lines in multi-line comments produced trailing whitespace. +Reported by Ralf Wiebicke +(#605998) +
    • +Javadoc trailing comments were ignored. Jalopy will now (again) treat such cases as errors. +Reported by Ralf Wiebicke +(#604072) +
    • +Jalopy duplicated comments in some rare cases. Reported by David Cooper +(#604065) +
    • +The console app failed to work on certain platforms due to classloading problems. +Reported by Benjamin Geer +#604038
    • +No blank lines were kept for synchronized blocks. Reported by Kees Kuip +#603455
    • +Variable interpolation did not work in header or footers. Reported by Daniel Frey +#601901
    • +Jalopy lost trailing comments in certain cases. Reported by Shankar Unni, Steve Corwin, Ray Powell +(#601393, +#602169, +#603914) +
    • +Jalopy failed to handle empty Javadoc Standard tags. Reported by Henrik Kjær and Don Johnson +(#601204, +#606163) +
    • +JBuilder Plug-in: the Plug-in is now compatible with JBuilder 7.0. Reported by Simeon Zverinski +(#596821) +
    • +The example Ant task in the manual contained a syntax error. +Reported by Eric Larson +(#595777) +
    • +With generating Javadoc comments enabled, existing +variable/method/class-level comments were dropped if not in Javadoc style. +Reported by John Zukowski +(#595164) +
    • +Auto-insertion of braces for braceless if-else blocks did not work as expected +(for Sun brace style). Reported by John Zukowski +(#595160) +
    • +@throws tags were wrongly inserted in some cases. Reported by Jarek Sacha +(#594738) +
    • +Printing of empty class/interface bodies failed, if cuddling of braces was +enabled. Reported by Richard Tasker and Benjamin Geer +(#594076, +#597080) +
    • +@version tags were wrapped if max. line length exceeded, and therefore failed to +be updated by CVS when checked in. Reported by Johnny Cass +(#592504) +
    • +Jalopy used to insert two many blank lines before certain statements. Reported by Kees Kuip +(#592496) +
    • jalopy.sh and preferences.sh failed +to work (under some unix flavors) because of wrong end-of-line characters. +Actually a build/CVS problem. Reported and fixed by Kees Kuip +(#592487) +
    • +Eclipse Plug-in: upon startup of the IDE org.eclipse.swt.SWTException: invalid thread access +was thrown. Reportedy by Dirk Jacobs +(#567314) +
    • +Backup files were always kept if the output target was not a file +
    • +jEdit Plug-in: the Format current Buffer menu item was grayed out +upon start-up if the buffer contained a non-Java file +
    • +Console Plug-in: specifying several regular expression patterns did not work. +Reported by Sameer Singh +

  3. +Changes + +
    • +The .XML settings format has been revised. It should now be somewhat cleaner. These +changes are transparent, the old settings format can be imported but only the new format +will be exportet. Those who use the .XML format should re-export their settings to avoid +the auto-transformation (and of course, there are many new switches) +
    • +The /bin directory of the distributions have been renamed to +/lib. For the Console and Ant Plug-ins the /bin +now only contains the wrapper scripts and the libaries moved to /lib. +
    • +Eclipse Plug-in: the Format label in the project view context menu +no longer appears at the end. Suggested by Davor Cengija and Vincent Massol +(#578331) +
    • +JBuilder Plug-in: the Format item in the project view context menu +is now more context sensitive. It won't pop up for non-Java files. Additionally, when +formatting the whole Project a confirmation message box appears +
    • +The @todo tag is now part of the build-in tag list +
    • +The Tab support has been rewritten. If tabs are enabled, *all* whitespace will +be realized with tabs (not only leading whitespace as with the former +implementation) +
    • +Denis N. Antonioli contributed several patches for the Javadoc parser: +
      • +The parser is now able to handle left curly braces that are not part of +an In-line tag +
      • +Attributes must not be quoted and numeric attributes may also start with %
      • +The closing tags for <dd>, <dl>, <dir> are now optional +
      +Thank you! +
    • +Parameter alignment of method or constructor declarations now works regardless +of the indentation settings (it did not work with custom indentation in +earlier versions) +
    • +The preview frame no longer uses the (unmaintained) jEdit Public Domain text area but +rather a standard JEditorPane with a highlighter dereived from +the BlueJ project (and that highlighter is +again build upon the jEdit Public Domain syntax package). Users of prior betas may +savely remove the file textarea-2.2.3.jar from their disks +

1.0 Beta 8 (2002-08-06)

  1. +New Features + +
    • +Thanks to Frank Klomp from +www.informatikatelier.com +a Plug-in for Oracle JDeveloper 9i is now available. +See Plug-in section
    • +Jalopy now comes with a simple project manager to make switching between +several code conventions easier. +See Project section
    • +ConsolePlugin: new option --force
    • +The line wrapping for chained method calls now works for nested calls too +
    • +The settings dialog now comes with a live preview. Requested by Erik Dick +(#563215) +
    • +Similar to Jindent, Jalopy is now able to perform variable interpolation for +the header or footer and Javadoc comment templates. +See Environment variables section. +Requested by Erik Dick +(#563213) +
    • +Similar to Jindent, you can now define custom Javadoc templates for +fields, classes/interfaces, constructor and method comments. See +Javadoc Templates section +
    • +The sorting order for the Java modifiers is now configurable. See +Sorting section +
    • +The texts for separator comments are now user configurable. See +Separation section. +Requested by Dirk Jacobs +(#567322). +
    • +The grouping of import statements can now be disabled. See +Imports section. +Requested by Emil A. Lefkof +(#562475). +
    • +Lowercase "l" as trailing character for literal +longs will be automatically capitalized during printing +
    • +The abstract modifier will be automatically removed if found +for interface or interface method declarations (as these are implicitly +abstract). +
    • +You can now specify whether Java sources should be parsed as JDK 1.4 compatible +(the default) or if sources should be parsed without treating +assert as a reserved keyword (i.e. JDK 1.3 compatible). +See the General section. +This change addresses bugs +#565512 and +#576983
    • +The header detection now provides a Smart Mode for users +who want to use singe-line comments for headers. If enabled, Jalopy treats the +first n number of singe-line comments before the first +node as part of a header and removes them. +See the Header section
    • +The element sorting changed: Added was a new category +Static variables/initializers +to avoid touching the class initialization as required by the Java language +specification ("static initializers and class variable initializers are +executed in textual order"). This partially addresses the feature request +#545603 also. +Reported by Kirk Wolf +
    • +The import optimization feature is now available for the Ant Plug-in too. See +the Ant Plug-in chapter +

  2. +Bugfixes + +
    • +Setting for Space before Brackets didn't take effect +
    • +Setting for Space Before Brackets in Types didn't take +effect for something like new String[0]
    • +jEdit Plug-in: The integration with the Gobal Options dialog doesn't suffer +from the resizing problems anymore +
    • +jEdit Plug-in: Jalopy directed all formatting messages always to the first view +
    • +Read-only files don't cause exceptions anymore. Jalopy will now display a +warning message. Reported by Andrew Barkley +(#587068) +
    • +Enclosed creator constructs could lead to uncompilable code. Reported by +Eddy Kivits +(#586450) +
    • do-while blocks without enclosing braces where not treated correctly. +Reported by Marcel Toele +(#581394) +
    • +The Javadoc printer missed a blank between the @link tag and +following HTML links. Reportedy by Brian Harriger +(#581299) +
    • +EOL characters were not correctly translated for multi-line, special and +Javadoc comments. Reportedy by Olivier Mengué +(#572130) +
    • +Enabling the cuddling of empty braces lead to compilation errors if an +trailing comment appeared before the opening brace. The cuddling is now disabled +for such a (rare) case. Reported by Kees Kuip +(#568974) +
    • +NPE during import that only appeared with certain JDKs. Reportedy by Davor Cengija +(#566205) +
    • +The insertion of Javadoc comments did not work for classes/interfaces and +fields (it was not implemented). Reported by Thomas Börkel +(#564255) +
    • +After importing settings from a distributed location, Jalopy did not use +these settings if the host was unavailable on successive invocations (but +rather the build-in defaults); now the imported settings are used and a +warning message issued. Reported by Thomas Börkel +(#563976) +
    • +The Java Language Specification requires every single-line comment to be +terminated by an end-of-line sequence, but Jalopy allowed a single-line-comment +to be terminated by an end-of-file. Reported by Thomas Börkel +(#563974) +
    • +Ant 1.4.1 (or earlier) caused problems because of an incompatibility with the +bundled AElfred parser. Therefore the parser (and all other 3rd party libraries) +are no longer bundled to enable you to selectively copy the needed libs into +the Ant /lib folder. Documentation was updated to explain +the issue. Reported by Larry Hamel et.al. +(#563385) +
    • +The Java parser failed for (strange) code like +if (obj.getClass() == (byte.class)). Reported by Hui Lin +(#562681) +
    • try/catch blocks were not correctly +formatted (again only with Sun brace style). Reported by Emil A. Lefkof +(#562039) +
    • +Chained method calls were wrongly wrapped if part of an expression. Reported by Emil A. Lefkof +(#562037) +
    • +Fixed some bugs regarding (evil) Sun brace styling. Reported by +Emil A. Lefkof, Thomas Börkel, Larry Hamel and Christian Halstrick, Anders Johansson +(#562034, +#564247, +#569306, +#569031, +#580600) +
    • +The settings format was not correctly updated between 1.0b6 and 1.0b7 +causing an IllegalArgumentException if the history +feature was disabled. Reported by Martin Spiller +(#561398, +#561675) +
    • +As the comment preserving/printing implementation has been rewritten, trailing +comment support should now work in nearly all cases. At least all reported +issues are now treated correctly. Reported by Stephane Houle, Emil A. Lefkof, +Kees Kuip, John Wilson +(#559222, +#565820, +#562034, +#578664) +
    • +The user selected brace style did not take effect for anonymous inner classes. +Reported by Ian Brown +(#545431) +
    • +Fixed a minor GUI bug in the Javadoc panel (column headers did not show up +using Windows L&F). Reported by Thomas Sauzedde +(#544404) +

  3. +Changes + +
    • +JBuilder Plug-in: it now checks whether the classpath is correctly set up +(whether all defined libraries exist) and if something seems to be broken, +the import optimization feature is enabled to avoid errors (a dialog appears to +inform you about the misconfiguration) +
    • +JBuilder Plug-in: the Jalopy Options... menu item now +appears in the Options group of the +Tools menu. +
    • +jEdit Plug-in: the Plug-in does not use ErrorList anymore, but rather relies +on the MessageView Plug-in which is bundled with the distribution (as it is not +yet available through the jEdit Plugin Central) +
    • +The sorting logic for variable declarations now compares by access modifiers first, +then (new!) type name and only if these two are equal by name (identifier) +
    • +The Javadoc printer now inserts a newline after every found <br> tag +(only happens if Javadoc parsing is enabled). This addresses the "Bug" +reported by Tony Falabella (that was no bug but rather the behaviour I found +sufficient) +(#562502) +
    • +The default setting for the backup level changed, it is now set to "0" +(no backups are kept) +
    • +The settings dialog is no longer a modal dialog (necessary for the live preview) +
    • +Started from the command line, the settings dialog now appears in the task +bar (under Win32). Suggested by Knut Wannheden +
    • +The bundled ANTLR runtime has been repackaged to avoid versioning problems +
    • +Apart from the ANTLR runtime, the binary distributions no longer bundle the +needed 3rd party libraries. Thus the installation procedure for some Plug-ins +requires more care: you have to manually remove outdated 3rd party libraries +before you copy the .jars provided with Jalopy into the +Plug-in/module folder of your application (Applies to Ant, Console, JBuilder + and jEdit, if done manually) +
    • +Some shipped 3rd party jars we're updated: log4j to 1.2.6, Oro to 2.0.6, +JAXP to 1.2. +

1.0 Beta 7 (2002-05-26)

  1. +New Features + +
    • +The wrapping behaviour for throws clauses is now more configurable. See +Wrapping section. +Requested by Stephane Houle +(#559222) +
    • +Indentation for extends, implements +and throws can now be specified explicitly. See +Indentation section
    • +Chained method calls are now wrapped (if line wrapping is enabled, of course). +You can either force wrapping after every call +(Refer to the Wrapping section) +or let wrapping happen automatically. Requested by Stephane Houle +(#559222) +

  2. +Bugfixes + +
    • +Sometimes stdin was not formatted. Reported and fixed by Kees Kuip +(#559503) +
    • +1.0b6 failed to work with JDK 1.3.0 due to a bug in the handling of the index +list .jar entry. Ant 1.5beta1 named it "INDEX.LIST" but this JDK expects "Index.list" +which in turn lead to classloading problems. +Reported by Steve Bromley +(#559704) +and Joel Alaux +(#559240) +
    • +Console Plug-in: Parsing a non-valid Java file with stdin always resulted in an +exitcode "0". It now returns "1" in such cases. Reported by Kees Kuip +(#560709) +
    • +The file history failed to work (because of an initialization error) +
    • +The wrapper scripts for the Console Plug-in failed to work (I forgot to rename +the startup class that has changed in 1.0b6). Reported by Ronen Rotstain +
    • +The JBuilder Plug-in is now compatible with jVI. Reported by Rich Kadel +(#559761) +
    • +Javadoc tags were (intensionally) only printed if the Javadoc comment belonged to a class/interface or +method/ctor declaration. Reported by Tony Falabella +(#559357) +
    • +Specifying a relative file as input source could lead to a file loss in case +of RuntimeExceptions during the processing and a backup level of "0". +Reported by Kees Kuip +(#558353) +
    • +The NetBeans module failed to function properly due to a wrong Manifest .jar entry. Reported by Nico Max and Davide Baroncelli +(#558560) +
    • +If Space around Shift operators was disabled, Jalopy failed to +add whitespace around the instanceof operator. Reported by Roger Kemp +(#558482) +
    • +Fixed a small but annoying bug regarding the alignment of assignments. Reported by GilloS +(#558638) +

  3. +Changes + +
    • +The detection logic for debug logging calls has been slightly improved. Calls like +Configuration.debug() won't be treated as logging calls anymore +
    • +The custom Javadoc tag definitions are not stored in distinct files anymore but +rather go into the settings file (to make it portable across system bounderies) +
    • +The Ant task attribute handling changed: if you omit any optional attribute now the +corresponding settings settings will be used for *all* attributes +

1.0 Beta 6 (2002-05-19)

  1. +New Features + +
    • +Thanks to Roman Sarychev, Jalopy now provides the ability to import/export +settings in an .XML format +(#549177) +
    • +Jalopy is now able to keep original blank lines. See Separation section for details +(#555914) +
    • +Modifiers of declarations can now be sorted. See Sort section for details +
    • +You can now enable the auto-insertion of an enclosing conditional for logging calls. See Misc section for details. Requested by Larry Hamel +(#550336) +
    • +Parameters of method definitions can now be aligned. See Indentation section. Requested by Gary Bentley +(#551205) +
    • +The default grouping depth is now user configurable. See Imports section. Requested by Larry Hamel +
    • +Added new options (before and after curly braces, blocks...) to customize the blank lines behaviour. See Separation section
    • +You can now print a blank between array type and initializer. Requested by David Weitzman +(#548888) +
    • +Jalopy is now able to load its settings from an Internet address. Refer to the +General section of the manual. Cool feature requested by Sven van't Veer +
    • +You can now use stdin/stdout redirection from the command line. If no input +file(s) are specified, Jalopy will start listening on stdin. Note that the +command line interface is now only available via the Console Plug-in! See +Examples section
    • +For array initializers you can now force a specfic number of elements to be +printed on each line or whether all elements should be printed on one line. +See Wrapping section
    • +Eclipse Plug-in: the Packages view context menu now contains a formatting menu item +

  2. +Bugfixes + + +
    • +Eclipse Plug-in: Fixed a bug in the shutdown hook. Only occurred if one had not +formatted several files at once during a session. Reported by Eric Vickery +
    • +Multi-line comments were not printed correctly if parsing of multi-line comments was +disabled and the individual lines not starting with a leading asterix. Reported by Tony Falabella +(#554141) +
    • +Javadoc generation failed if Parse/Format tags was disabled. Reported by Gary Bentley +(#551194) +
    • +Serial version UID check box didn't save. Reported by Kevin Duffey +(#551604) +
    • +Formatting an opened file with one of the Plug-ins did not create a backup file. Reported by Warren Nicholls +(#545077) +
    • +Custom Javadoc tag definitions are now loaded correctly and thus working. Reported by Arnd Empting +(#547028) +
    • +Fixed an trailing comment bug for the Sun brace styling. Reported by Martin Spiller +(#545616) +
    • +Eclipse Plug-in: After formatting the active editor, the IBeam cursor was not +restored but rather the default cursor showed up +
    • +Line wrapping for while and do-while expression parts now working (I forgot the markers) +
    • +Fixed a blank lines issue for singe-line comments (printed one extra behind +left curly braces, this is now user configurable) +
    • +Fixed another blank lines issue for the Sun brace style (missed one blank +line between blocks. Reported by Bradley Smith +(#545941, +#544459) +
    • +EOF comments weren't always treated correctly (in case of singe-line comments). Reported by Ian Brown +(#544706) +
    • +jEdit Plug-in: Updated to work with 4.0 final. It now won't work with any prior release +(#544100) +
    • +NetBeans Plug-in: fixed a build problem causing the .nbm +file to be missing in the distro archive. Reported by Brian Ewins +(#544162) +
    • +Fixed a minor bug in the JavadocPrinter regarding the printing of lists +
    • +Footers were always removed no matter whether enabled or disabled +
    • +Left curly brace for array initialization expression now regards the selected brace style +

  3. +Changes + +
    • +The license terms have changed. The core runtime and most of the Plug-ins are now +released under the BSD license. +Due to license restrictions of a 3rd party library, +the command line interface has been removed from *ALL* +distributions and a new Plug-in was created: the Console Plug-in. +
    • +JBuilder Plug-in: switching project does not bring up a blocking progress dialog +anymore. The class repository is loaded in a background thread +
    • +All file dialogs are not opened directly anymore but are accessible via an +intermediate component that provides a history +
    • +Eclipse Plug-in: Updated the plugin.xml to work with the +latest stable build (20020416). This change only regards the menu item to +invoke the Jalopy settings dialog; this item now appears under the 'Window' +menu as the 'Workbench' menu has been gone +
    • +The Javadoc parser now recognizes <br/> as a valid HTML tag +(#547028) +
    • +The Javadoc parser now checks whether any custom tag definition was added/removed +since the last run and therefore needs reloading +
    • +Specifying an empty string input via Jalopy#setInput(String, String) no longer +throws IllegalArgumentException, instead the input is +handled like an up-to-date file +
    • Load... and Save... buttons on the +General settings page has been renamed +to Import... and Export...
    • +Changed the comment handling of labeled statements: if the following loop had +comments before, these were printed before the labeled statement, now they will +be printed before the loop statement +
    • +The build scripts has been updated to use Ant 1.5beta1 features. Prior Ant +releases won't work anymore +
    • +Updated the bundled log4j distribution to 1.2.1. Adopted the new naming scheme +and renamed all Category and Priority +instances. Note that 1.2 is *no* drop-in replacement (no matter what the log4j docu says) +as they renamed a public (sic!) field I have to use +
    • +jEdit Plug-in: The menu item to display the Jalopy settings dialog can now +be added to the context menu +

1.0 Beta 5 (2000-04-14)

  1. +New Features + +
    • AbstractPlugin.java now comes with multi-processor +support, so all IDE Plug-ins should operate faster on multi-processor machines. +Refer to the Misc section of the +manual +
    • +Ant Plug-in: Added multi-processor support, new parameter threads to specify +the number of threads to use +
    • +Declaration and assignments aligning now available. Refer to the +Indentation section of the +manual +
    • +Separation (blank lines) behaviour now configurable. Refer to the +Separation section of the manual +
    • +Added Eclipse Plug-in (needs Eclipse 2.0) +
    • +Jalopy now supports the common convention of using a single @see tag +instead of all the other tags and won't insert any missing Javadoc tags in such +cases. Same applies if the inline tag {@inheritDoc} is found in the description +
    • +Work started to provide an extended index for the user manual. +

  2. +Bugfixes + +
    • +Javadoc add/remove didn't work for @return tag +
    • +The editable combo boxes (NumberComboBoxEditor.java) +caused exceptions on losing focus +

  3. +Changes +
    • +Javadoc now also generated for methods/ctors without params. +
    • +Ant Plug-in: Changed the configuration of the message output. It is +now controlled by a single parameter loglevel. This may +force you to update your build scripts. Refer to the +Ant section +of the manual to read about the list of valid parameters +
    • +The source base has been split into different modules (to make CVS happy and +life easier) and the build system has changed accordingly +
    • +The website and all documentation is now auto-generated out of .XML files +(using the Ant style task and DocBook XSL 1.50.0/Saxon 6.5.1) +
    • +The entries of the history viewer are now sorted +
    • +The web site has a new look +

1.0 Beta 4 (2000-03-20)

  1. +New Features + +
    • +Jalopy now provides some decent user documentation. Many thanks to Larry +Hamel for the proof-reading +
    • +The line wrapping logic is now fully implemented +
    • +New line wrapping option: You can now force the wrapping for parameter +lists of method calls. Note that this switch only applies to those lists +that contain another method call. Refer to the +Wrap always section of the manual. +Nice feature suggested by David Beutel +
    • +Continuation indentation is now available for ternary if-else epressions +too. Refer to the +Indentation section of the manual +
    • +New option: You can now specify whether you want indentation realized +with tabs instead of spaces. Refer to the +Indentation section of the manual. +This feature was kindly donated by David Beutel +
    • +The history feature is now more user configurable. You can specifiy +whether you want to have it enabled at all and what policy you want to +use. Choose between the comment based history (which inserts a small +header on top of every file) or a file-driven history. Refer to the +Indentation section of the manual. +The history feature is now *disabled* by default +
    • +Added two new wrapping options: Before extends keyword and +Before implements keyword. Enabling any of them will force +a newline before the given keyword. Refer to the +Wrap always section of the manual. +Requested by John Bishop +
    • +New option to control the printing of labels. You can now specify whether +a line break should be printed after labels or not. Refer to the +Wrap always section of the manual +

  2. +Bugfixes + +
    • +Small bugfix regarding trailing comments and array initialization +
    • +Line wrapping for parameter lists was always performed, no matter what +preference setting given +
    • +For ternary if-else statements, parentheses was always inserted for the +expression part if Insert parentheses around expressions was enabled. +Now parentheses are only inserted if actually needed +
    • Indent labels option didn't show up on the indentation settings page +
    • +The Javadoc auto-generation facility no longer inserts @throws tags for throws +clauses that are catched in the method body +

  3. +Changes + +
    • +Settings pages Braces and Block style +now merged into one page Braces with two tabs +Style and Misc
    • Cancel button of the Progress monitor dialog renamed to +Stop to reflect the fact that some files might have changed +
    • +Settings page Javadoc cleaned up +
    • +Specifying an identify key to delete existing headers/footers is now +enforced +

1.0 Beta 3 (2000-03-10)

  1. +New Features + +
    • +New option: You can now specify whether you want to retain first column +comments vs. indenting them relative to their position in the code. Refer to the +Indentation section of the manual +
    • +New option: You can now use different brace styles for class/method +blocks and other types of blocks (for Sun, GNU and Custom style) +

  2. +Bugfixes + +
    • +The Javadoc parser rework lead to an error with the Javadoc @throws tags +verification. This has been fixed now (Actually only a build problem) +
    • +If Space before Case colon was enabled, no space was printed for +the default keyword +
    • +The comment creation only worked if the comment parsing and tag checking +was enabled too +
    • +Formatting a non-file input produced wrong updates of the history header +

  3. +Changes + +
    • +The line-wrapping logic changed/improved somewhat +

1.0 Beta 2 (2002-03-05)

  1. +New Features + +
    • +Custom Javadoc tag definitions now available +
    • +New option: You can now choose whether you want an empty statement +inserted into empty braces to make the intension obvious +
    • +New option: You can now specify whether if-statements should generally use +continuation indent. This option was added to address the fact that +conventional indentation could make seeing the body difficult (as outlined +in the Sun Java Conventions guide) +
    • +New option: Line wrapping can now be performed before or after operators +
    • +New option: You can now specify template texts for auto-inserted Javadoc tags. +
    • +NetBeans Plug-in added (for NetBeans 3.3.1 and higher) +
    • +jEdit Plug-in: updated to work with jEdit 4.0prev1 and higher +
    • +JBuilder Plug-in: added the Format and Settings actions to the popup +menu of the editor pane +
    • +Ant Plug-in: new parameter style to set the settings file to use +

  2. +Bugfixes + +
    • +Fixed a bug regarding the wrong printing of parenthesis for certain +rare cases +
    • +Correction of mispelled Javadoc standard tags failed if the correct +amount of tags was given for the method/ctor +
    • +No space was printed after array elements for arrays that fit in +one line +
    • +Printing of trailing comments now works much more reliable +
    • +No message was reported in case the user specified an invalid input file +on the command line +
    • +Progress dialog didn't show progress for files with an opened editor view +
    • +If no arguments were given on the command line, no warning was printed. +Now the usage notes will appear +
    • +Fixed a horrible bug in the JBuilder Plug-in which caused wrong class +repository updates if one switched JDKs +
    • +Fixed an error in the initialization process of the logging facility for +Plug-ins using the AbstractPlugin skeleton which hindered the updating +of the errors/warnings count in the progress dialog +

  3. +Changes + +
    • +All Plug-ins now only available as bundles. This will certainly pertain +until a branding mechanism is available to check whether a given Plug-in +will work with a given Jalopy runtime (a la NetBeans?) +
    • +Changed/refactored some method signatures in the client API for consistency +and ease of use +
    • +The Javadoc parser has been reworked to allow both custom standard and +inline tags +
    • +Some API documentation enhancements, updated the build script to only generate +the documentation for the public client API, removed the documentation for the +Plug-ins from the distribution Javadoc +
    • +Moved the logic to set the settings file to use, from the command line +interface into Jalopy.java to let Plug-ins easily set the settings file +to use +
    • +Updated the used ANTLR version to 2.7.2a2. Compiled with optimizations and +without debugging info results in smaller archive sizes +
    • +Many build-script improvements. It should now be possible to build a +Jalopy runtime version without the need of Plug-in related 3rd-party +libraries +
    • +The Jalopy runtime classes and all needed library classes are now bundled +into one .jar +
    • +The customizer mini editor is no longer part of the runtime .jar +

1.0 Beta 1 (2002-02-13)

  1. +New Features + +
    • +jEdit Plug-in added (for jEdit 3.2.2) +
    • +The progress dialog now includes a cancel button +

  2. +Bugfixes + +
    • +Settings dialog did not close when invoked on the command line +with java Preferences
    • +Error in build script fixed (JavadocTokenTypes.txt now included in +the .jars) to make the Javadoc auto-correction work +
    • +Braces indentation not printed for left curly braces +
    • +JBuilder Plug-in: Registered directories need to be reparsed on +every startup for the import expansion/collapsing to work reliably +

  3. +Changes + +
    • +Changed default package depth for packages java, javax, gnu in the +settings (former was 3, now uses 2) +
    • +Changed the SwingWorker implementation to the one found in Doug Lea's +util.concurrent package, refactored AbstractPlugin.java +to use an inner class dereived from SwingWorker.java +instead of extending SwingWorker.java itself +
    • +Formatting a single file doesn't bring up the progress dialog anymore, but +rather shows the system wait cursor and blocks all input +
    • +Removed the Javadoc documentation from the Plug-in distributions +

Initial beta version (2002-02-10)

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/imports.html b/utils/jalopy/docs/imports.html new file mode 100755 index 0000000..50ed77a --- /dev/null +++ b/utils/jalopy/docs/imports.html @@ -0,0 +1,121 @@ + + + + + 4.3.7. Imports + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.7. Imports

+Controls the handling of import declarations. +

4.3.7.1. General

+Enables the sorting of import statements. Sorting the import statements makes +it simple to browse a long list of imports. +

  • +Sort import statements +

    +Enables or disables the sorting of import statements. Enabling this option +will sort all imports lexicographically. +

4.3.7.2. Grouping

+In addition to sorting, associated packages can be grouped together to reduce +complexity by packing related information into a common unit. +

  • +Default grouping depth +

    +Lets you define the default grouping depth. Only takes effect if sorting is enabled. +

    +The grouping depth specifies the number of package name parts that are to +be taken into account in order to determine whether two import statements are to +be grouped together. For certain packages you may want to specify a grouping +depth that differs from the default. +

    +Statements are to be grouped together, if all relevant parts are equal. So via +the grouping depth you can effectively specify how many parts are relevant. +

    +To disable grouping at all, set the grouping depth to "0". +

    Example 4.137. Grouping depth java='1'

    +import java.awt.Color;
    +import java.awt.Component;
    +import java.awt.GridBagConstraints;
    +import java.awt.GridBagLayout;
    +import java.awt.event.ActionEvent;
    +import java.awt.event.ActionListener;
    +import java.util.ArrayList;
    +import java.util.List;
    +

    Example 4.138. Grouping depth java='2'

    +import java.awt.Color;
    +import java.awt.Component;
    +import java.awt.GridBagConstraints;
    +import java.awt.GridBagLayout;
    +import java.awt.event.ActionEvent;
    +import java.awt.event.ActionListener;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +

    Example 4.139. Grouping depth java= '3'

    +import java.awt.Color;
    +import java.awt.Component;
    +import java.awt.GridBagConstraints;
    +import java.awt.GridBagLayout;
    +
    +import java.awt.event.ActionEvent;
    +import java.awt.event.ActionListener;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +

+You can add/remove package fragments (e.g. javax, javax.swing or com.foo.sarah) +via the Add... and Remove +buttons to fine-tune the appearance for certain packages. +

+To specify the order in which related statements should appear, you +may want to use the Up and Down buttons. +

+Note that the asterix represents all undefined packages. +

4.3.7.3. Optimize

+Optimizes the import statements by either expanding or collapsing them. This +is a nice feature that is currently only available with the Ant and +JBuilder Plug-in. +

  • +Expand on-demand imports + +

    +If enabled, tries to expand all on-demand import statements. +

    +Expanding means to resolve all on-demand import statements (sometimes called +wildcard imports) and replace them with single-type import statements (sometimes +called explicit imports) of the types that are actually used in the source file. +

    +So the following on-demand import statement may be expanded into two +single-type import statements that reference the needed types for this package. +

    Example 4.140. On-demand import statement

    +import java.util.*;
    +

    Example 4.141. Single-type import statements

    +import java.util.ArrayList;
    +import java.util.List;
    +

    +Using single-type imports is quite useful and an absolute requirement in the +open source community as this code is usually really reviewed. Using +single-type imports makes it easy for the code reader to quickly find +out the package a particular type is in: You just search for the type name +from the start of the source file. +

  • +Collapse single-type imports + + +

    +If enabled, tries to collapse all single-type statements. +

    +Collapsing means to remove all single-type imports of a given package and +replace them with one on-demand import statement. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/indentation.html b/utils/jalopy/docs/indentation.html new file mode 100755 index 0000000..7953c4e --- /dev/null +++ b/utils/jalopy/docs/indentation.html @@ -0,0 +1,428 @@ + + + + + 4.3.3. Indentation + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.3. Indentation

+Controls the indentation settings. + +

4.3.3.1. General

Lets you change the general indentation settings.

4.3.3.1.1. Policy

+Lets you choose the way lines should be indented. +

  • +Standard indent +

    +With standard indentation, lines will be indented according to the +current indentation level (Note that the indentation level changes as the block +or parentheses level changes). +

    Example 4.30. Method declaration (standard indented)

    +public void severalParameters(String one, int two, String three,
    +    StringObject four, AnotherObject five) {
    +...
    +}
    +

    Example 4.31. Method Call (standard indented)

    +vector.add(new AppServerReference(
    +        "RemoteApplicationManager",
    +        poa.create_reference_with_id("RemoteApplicationManager".getBytes(),
    +            RemoteApplicationManagerHelper.id())));
    +

    Example 4.32. Assignment (standard indented)

    +doublette[InteressentenPflegeController.GEBURTSDATUM] = versichertenResultSetRow[i].field[0]
    +    .substring(0, 2) + "."
    +    + versichertenResultSetRow[i].field[0].substring(2, 4) + "."
    +    + versichertenResultSetRow[i].field[0].substring(4, 6);
    +

  • +Deep indent +

    +Deep indentation means that lines will be indented relative to the current +parentheses or assignment offset. This way consecutive code sections are somewhat easier +to recognize at the downside of consuming more horizontal space. +

    Example 4.33. Method declaration (deep indented)

    +public void severalParameters(String one, int two, String three,
    +                              StringObject four, AnotherObject five) {
    +    ...
    +}
    +

    Example 4.34. Method Call (deep indented)

    +this.add(lbPunktzahl,
    +         new GridBagLayout(0, 1, 2, 1, 0.0, 0.0,
    +                           GribBagConstraints.WEST,
    +                           GribBagConstraints.NONE,
    +                           new Insets(0, GribBagConstraints.WEST,
    +                                      GribBagConstraints.WEST,
    +                                      GribBagConstraints.WEST), 0, 0));
    +

    Example 4.35. Assignment (deep indented)

    +doublette[Controller.GEBURTSDATUM] = versichertenResultSetRow[i].field[0]
    +                                     .substring(0, 2) + "."
    +                                     + versichertenResultSetRow[i].field[0]
    +                                       .substring(2, 4)
    +                                     + "."
    +                                     + versichertenResultSetRow[i].field[0]
    +                                       .substring(4, 6);
    +

4.3.3.1.2. Sizes

+Lets you set different indentation sizes. +

  • +General indent + +

    +Specifies the number of spaces to use for general indentation (Studies have +found that 2 to 4 spaces for indentation is optimal) +

    Example 4.36. 2 space general indent

    +public class Preferences
    +{
    +->private Preferences()
    +->{
    +->}
    +
    +->public static void main(String[] argv)
    +->{
    +->->de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
    +->}
    +}
    +

    Example 4.37. 4 space general indent

    +public class Preferences
    +{
    +--->private Preferences()
    +--->{
    +--->}
    +
    +--->public static void main(String[] argv)
    +--->{
    +--->--->de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
    +--->}
    +}
    +

  • +Leading indent + +

    +Specifies the number of spaces to prepend before every line printed. +

    Example 4.38. 6 space leading indent

    +----->public class Preferences
    +----->{
    +----->    private Preferences()
    +----->    {
    +----->    }
    +
    +----->    public static void main(String[] argv)
    +----->    {
    +----->        de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
    +----->    }
    +----->}
    +

  • +Continuation indent + +

    +Specifies the number of spaces that should be inserted in front of +continuation lines, i.e. the consecutive lines in case of a line wrap. +

    Example 4.39. 2 space continuation indent

    +if ((condition1 && condition2)
    +    ->|| (condition3 && condition4)
    +    ->|| !(condition5 && condition6)) {
    +    doSomethingAboutIt();
    +}
    +

    Example 4.40. 4 space continuation indent

    +if ((condition1 && condition2)
    +    --->|| (condition3 && condition4)
    +    --->|| !(condition5 && condition6)) {
    +    doSomethingAboutIt();
    +}
    +

  • +Trailing comment indent + + + +

    +Specifies the number of spaces to insert between trailing comments and the +preceding statement. +

    Example 4.41. 3 space trailing comment indent

    +new String[] {
    +    "Sunday",-->// Sunday
    +    "Monday",-->// Monday
    +    "Tuesday",-->// Tuesday
    +    "Wednesday",-->// Wednesday
    +    "Thursday",-->// Thursday
    +    "Friday",-->// Friday
    +    "Saturday"-->// Saturday
    +}
    +

  • +Original Tab indent +

    +Specifies the original tabular size of the source code. Some indentations +or alignments may fail, if you miss the correct size here. + + +

  • +Extends indent +

    +If enabled, specifies the whitespace to print before the extends +keyword in case it was printed on a new line. +

    Example 4.42. extends indentation with 6 spaces

    +public interface Channel
    +------>extends Puttable, Takable
    +{
    +    ...
    +}
    +

  • +Implements indent +

    +Specifies the whitespace to print before the implements +keyword in case it was printed on a new line. +

    Example 4.43. implements indentation with 8 spaces

    +public class SynchronizedBoolean
    +------->implements Comparable, Cloneable
    +{
    +    ...
    +}
    +

  • +Throws indent +

    +Specifies the whitespace to print before the throws +keyword in case it was printed on a new line. + +

    Example 4.44. throws indentation with 3 spaces

    +private static final File getDestinationFile(File dest, String packageName,
    +                                             String filename)
    +-->throws IOException, FooException
    +{
    +    ...
    +}
    +

4.3.3.2. Misc

  • +Use tabs to indent + +

    +Normally, Jalopy uses spaces to indent lines. If you prefer tabs, check this box. +

  • +Indent "case" from "switch" +

    +The Sun Java code convention recommends a switch style where case statements +are not indented relative to the switch statement as a whole. However, this +option allows you to indent the case statements to make the entire switch +statement stand out. +

    Example 4.45. Switch statement (unindented)

    +switch (prio)
    +{
    +case Priority.ERROR_INT :
    +case Priority.FATAL_INT :
    +    color = Color.red;
    +    break;
    +
    +case Priority.WARN_INT :
    +    color = Color.blue;
    +    break;
    +
    +default:
    +    color = Color.black;
    +    break;
    +}
    +

    Example 4.46. Switch statement (indented)

    +switch (prio)
    +{
    +--->case Priority.ERROR_INT :
    +--->case Priority.FATAL_INT :
    +--->    color = Color.red;
    +--->    break;
    +
    +--->case Priority.WARN_INT :
    +--->    color = Color.blue;
    +--->    break;
    +
    +--->default:
    +--->    color = Color.black;
    +--->    break;
    +}
    +

  • +Indent labels + +

    +Specifies whether lables should be indented with the current indentation level. +

    Example 4.47. Unindented label

    +// advance to the first CLASS_DEF or INTERFACE_DEF
    +LOOP:
    +        for (AST child = tree.getFirstChild();
    +             child != null;
    +             child = child.getNextSibling())
    +        {
    +            switch (child.getType())
    +            {
    +                case JavaTokenTypes.CLASS_DEF :
    +                case JavaTokenTypes.INTERFACE_DEF :
    +                    next = child;
    +                    break LOOP;
    +                default :
    +                    break;
    +            }
    +        }
    +

    Example 4.48. Indented label

    +        // advance to the first CLASS_DEF or INTERFACE_DEF
    +        LOOP:
    +        for (AST child = tree.getFirstChild();
    +             child != null;
    +             child = child.getNextSibling())
    +        {
    +            switch (child.getType()) {
    +                case JavaTokenTypes.CLASS_DEF :
    +                case JavaTokenTypes.INTERFACE_DEF :
    +                    next = child;
    +                    break LOOP;
    +
    +                default :
    +                    break;
    +            }
    +        }
    +

  • +Indent first column comments +

    +Normally, all comments will be indented relative to their position in the code +to avoid that comments break the logical structure of the program. Some +developers may like to disable the indentation for first column comments +during the developing phase. +

    Example 4.49. First column comment (indented)

    +    public static Printer create(AST node)
    +    {
    +
    +        /*
    +        if (node == null)
    +        {
    +            return new NullPrinter();
    +        }
    +        */
    +        return create(node.getType());
    +    }
    +

    Example 4.50. First column comment (unindented)

    +    public static Printer create(AST node)
    +    {
    +
    +/*
    +        if (node == null)
    +        {
    +            return new NullPrinter();
    +        }
    +*/
    +        return create(node.getType());
    +    }
    +

4.3.3.3. Align

  • +Variable identifiers +

    +If enabled, aligns the identifiers of variable declarations. +

    Example 4.51. Variable identifiers

    +String text = "text";
    +int a = -1;
    +History.Entry entry = new History.Entry(text);
    +

    Example 4.52. Variable identifiers (aligned)

    +String        text = "text";
    +int           a = -1;
    +History.Entry entry = new History.Entry(text);
    +

  • +Variable assignments +

    +If enabled, aligns the assignment parts of variable declarations or, surprise, assignments. +

    Example 4.53. Variable assignments (aligned)

    +String text         = "text";
    +int a               = -1;
    +History.Entry entry = new History.Entry(text);
    +

    +If both variable alignment options are enabled, you can achieve a style like +the following: +

    Example 4.54. Variable identifiers/assignments (both aligned)

    +String        text  = "text";
    +int           a     = -1;
    +History.Entry entry = new History.Entry(text);
    +

    + +

  • +Method Def parameters +

    +If enabled, aligns the parameters of method declarations. This only applies if +all parameters will be wrapped; either because wrapping is forced or the +max. line length is reached. To force aligning, you have to enable the +wrapping for method parameters (See Method Def parameters). +

    Example 4.55. Method declaration parameters

    +public static File create(final File file,
    +                          File directory,
    +                          int backupLevel)
    +{
    +    ...
    +}
    +

    Example 4.56. Method declaration parameters (aligned)

    +public static File create(final File file,
    +                          File       directory,
    +                          int        backupLevel)
    +{
    +    ...
    +}
    +

  • +Method Call chains +

    +If disabled, indentation happens according to the current indentation level. +

    Example 4.57. Method Call chain (standard indented)

    +Fachschluesselerzeugung.createService()
    +.getNeuerFachschluesselServiceService(
    +    FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT);
    +

    +Otherwise indentation is performed relative to the column offset of the first chain link. +

    Example 4.58. Method Call chain (aligned)

    +Fachschluesselerzeugung.createService()
    +                       .getNeuerFachschluesselServiceService(
    +                            FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT);
    +

  • +Ternary expressions +

    +If disabled, ternary expressions are printed according to the current +indentation policy. +

    Example 4.59. Ternary operators (standard indented)

    +        alpha = (aLongBooleanExpression) ? beta    |
    +        : gamma;                                   |
    +

    Example 4.60. Ternary operators (deep indented)

    +        alpha = (aLongBooleanExpression) ? beta    |
    +                : gamma;                           |
    +

    +If enabled, the second operator will always be aligned relative to the first one. +

    Example 4.61. Ternary expresssions (aligned)

    +        alpha = (aLongBooleanExpression) ? beta    |
    +                                         : gamma;  |
    +

    +Note that this switch only takes affect, if indeed a line break was inserted +before the second expression. You can force such line breaks with the +Wrap always before ternary expression colon setting. +

4.3.3.4. Continuation

+Lets you specify extra indentation for consectutive lines of certain expressions. +

  • +Blocks +

    +The Sun brace style could make seeing the statement body difficult. To +workaround this problem, you may want to use continuation indentation in case you like this +brace style. This setting applies for if, for, while +and do-while blocks. +

    Example 4.62. Non-continuation indentation

    +if ((condition1 && condition2)
    +    || (condition3 && condition4)
    +    || !(condition5 && condition6)) { // BAD WRAPS
    +    doSomethingAboutIt();             // MAKE THIS LINE EASY TO MISS
    +}
    +

    Example 4.63. Continuation indentation

    +if ((condition1 && condition2)
    +        || (condition3 && condition4)
    +        || !(condition5 && condition6)) {
    +    doSomethingAboutIt();
    +}
    +

    +Refer to Section 4.3.1.1.1, “Styles” for the available brace style options. +

  • +Operators +

    +If enabled, indentation will be increased before an operand will be printed. +

    Example 4.64. Ternary expression (deep indented)

    +String comma = spaceAfterComma
    +               --->? COMMA_SPACE
    +               --->: COMMA;
    +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/index.html b/utils/jalopy/docs/index.html new file mode 100755 index 0000000..4454e3a --- /dev/null +++ b/utils/jalopy/docs/index.html @@ -0,0 +1,53 @@ + + + + + Jalopy Java Source Code Formatter Beautifier Pretty Printer + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History
+ This page generated: June 8 2004

Overview

+Jalopy is a source code formatter for the Sun Java programming language. It +layouts any valid Java source code according to some widely configurable rules; +to meet a certain coding style without putting a formatting burden on individual +developers. +

+With Jalopy you will be able to transform any foreign coding style to your +own liking, without any browbeating or bloodletting. +

+Jalopy's functionality covers: +

+Jalopy is +"OSI Certified Open Source Software", +released under a BSD License. Please +refer to Appendix A for the license terms of the +accompanying 3rd party libraries and the different Plug-in chapters +for the license terms of the provided Plug-ins. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/inspector-naming.html b/utils/jalopy/docs/inspector-naming.html new file mode 100755 index 0000000..6de1f5b --- /dev/null +++ b/utils/jalopy/docs/inspector-naming.html @@ -0,0 +1,55 @@ + + + + + 4.4.2. Naming + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.4.2. Naming

+Lets you specify the naming constraints for different Java source file elements. These +constraints are naturally expressed with regular expressions (Perl 5.003 syntax). +

+The list component displays all covered elements along with their current regular +expression. +

+Selecting an item in the list and either pressing the Change... +button or double-clicking on the item will open a little regular expression testing tool +that can be used to interactively craft a valid regular expression. +

4.4.2.1. Regular expression tester

+The regular expression tester lets you interactively specifiy a valid regular expression +that matches a certain String pattern. +

  • +Regexp +

    +The Regexp text field is where you have to insert the regular +expression. This text field initially contains the current regular expression for the +list item that is under construction. +

    +The used regular expression syntax is that of Perl 5.003. See Mastering Regular +Expressions [Friedl97] for an in-depth look at this +regular expression flavor. +

  • +String +

    +The String text field is where you have to type a String that should +be matched by the specified regular expression. This text field is initially empty; you +have to enter a String in order to be able to test the regular expression. +

+Once you have setup up the text fields you can either use the Test +button to soley perform the pattern matching test or the Apply button +which both performs testing and - on success - closes the dialog and updates the list. +

+You can always use the Cancel button to cancel editing. The dialog +will be closed nd no changes made to the list. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/inspector.html b/utils/jalopy/docs/inspector.html new file mode 100755 index 0000000..796115d --- /dev/null +++ b/utils/jalopy/docs/inspector.html @@ -0,0 +1,170 @@ + + + + + 4.4. Code Inspector + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.4. Code Inspector

+Provides the configuration facility for the Jalopy Code Inspector. The Code Inspector is +able to inspect Java source files for naming convention violations and possible code +weaknesses. +

4.4.1. General

+Lets you control the general Code Inspector settings. +

4.4.1.1. General

  • +Enable +

    +Lets you enable or disable the Code Inspector as a whole. +

4.4.1.2. Tips

+Lets you selectively choose what actions should be performed during inspection. Moving the +mouse pointer onto a checkbox displays a minimalistic tooltip after a short delay. +

  • +Tip 1 - Don't substitute another type for Object in the equals declaration +

    +For a detailed discussion see Effective Java [Bloch01], pp. 35. +

  • +Tip 2 - Object the general contract when overriding equals +

    +For a detailed discussion see Effective Java [Bloch01], pp. 25. +

  • +Tip 3 - Always override hashCode when you override equals +

    +For a detailed discussion see Effective Java [Bloch01], pp. 36. +

  • +Tip 4 - Always override equals when you override hashCode +

  • +Tip 5 - Always override toString +

    +For a detailed discussion see Effective Java [Bloch01], pp. 42. +

  • +Tip 6 - Use interfaces only to define types +

    +For a detailed discussion see Effective Java [Bloch01], pp. 89. +

  • +Tip 7 - Replace structures with classes +

    +For a detailed discussion see Effective Java [Bloch01], pp. 97. +

  • +Tip 8 - Return zero-length arrays, not nulls +

    +For a detailed discussion see Effective Java [Bloch01], pp. 134. +

  • +Tip 9 - Adhere to generally accepted naming conventions +

    +For a detailed discussion see Effective Java [Bloch01], pp. 165. +

  • +Tip 10 - Refer to objects by their interfaces +

    +For a detailed discussion see Effective Java [Bloch01], pp. 156. +

  • +Tip 11 - Never declare that a method "throws Exception" +

    +For a detailed discussion see Effective Java [Bloch01], pp. 181. +

  • +Tip 12 - Never declare that a method "throws Throwable" +

    +For a detailed discussion see Effective Java [Bloch01], pp. 181. +

  • +Tip 13 - Don't ignore exceptions +

    +For a detailed discussion see Effective Java [Bloch01], pp. 187. +

  • +Tip 14 - Never invoke wait outside a loop +

    +For a detailed discussion see Effective Java [Bloch01], pp. 201. +

  • +Tip 15 - Avoid thread groups +

    +For a detailed discussion see Effective Java [Bloch01], pp. 211. +

  • +Tip 16 - Document collection types +

    +As long as there are no strong-typed collections (a.k.a. Java Generics support) available, +it is best to document the object type of the items hold by a collection. +

    Example 4.154. Collection comment

    +private static final List _favorableTypes = new ArrayList(20); // List of <String>
    +

  • +Tip 17 - Adhere to naming convention for collection types +

    +If you use comments to document the object type of collection items, you should conform to +a generally accepted naming convention. +

  • +Tip 18 - Avoid empty finally blocks +

    +Empty finally blocks are of no use and may indicate programmer errors. +

    Example 4.155. Empty finally block

    +Writer writer = null;
    +
    +try
    +{
    +    writer = new BufferedWriter(new FileWriter(file));
    +    write.write(data);
    +}
    +catch (IOException ex)
    +{
    +    System.err.println("file could not be written -- " + file);
    +}
    +finally
    +{
    +}
    +

    +The programmer certainly wanted to close the Writer in the +finally block to ensure that allocated system resources will be freed. +

  • +Tip 19 - Avoid variable shadowing +

    +Variable shadowing should be avoided on general principle, as it tends to be confusing. +

    +For more information about shadowing, see the +Java Developer Connection (JDC) Tech Tips, October 10, 2000 +( +http://developer.java.sun.com/developer/TechTips/2000/tt1010.html#tip2, subscription needed) or +section 6.3.2, "Obscured Declarations," section 7.5.2, +"Type-Import-on-Demand Declaration," section 8.4.6, "Inheritance, Overriding, and Hiding," +section 8.4.8.5, "Example: Invocation of Hidden Class Methods," and section 14.4.3, +"Shadowing of Names by Local variables" in "The Java Language Specification Second +Edition" by Gosling, Joy, Steele, and Bracha +(http://java.sun.com/docs/books/jls/). +

  • +Tip 20 - Add NOI18N comment for String literals +

    +Enabling this tip will cause warnings for all String literals without associated +/* NOI18N */ comment. +

    +Internationalizing Java applications is often done with nifty tools that use marker +comments to indicate that a given String literal should not be considered for localization. +Most tools (at least the ones I know of) use trailing single-line comments which may not +be very robust for processing with a formatting tool such as Jalopy. In contrast the author +uses a multi-line comment of the form /* NOI18N */ that gets directly +placed after a String literal and will therefore always stuck with it. +

    Example 4.156. $NON-NLS-1$ comment

    +FileDialog dialog = new FileDialog(this,
    +    ResourceBundle.getBundle(BUNDLE_NAME)
    +    .getString("BTN_SAVE_AS", FileDialog.SAVE); //$NON-NLS-1$
    +

    +This trailing comment could be easily moved away from its String literal during formatting +which would result in an unwanted notice on successive internationalization runs. +

    Example 4.157. $NON-NLS-1$ comment

    +FileDialog dialog =
    +    new FileDialog(this,
    +                   ResourceBundle.getBundle(BUNDLE_NAME).
    +                                  getString("BTN_SAVE_AS",
    +                   FileDialog.SAVE); //$NON-NLS-1$
    +

    Example 4.158. NOI18N comment

    +FileDialog dialog =
    +    new FileDialog(this,
    +                   ResourceBundle.getBundle(BUNDLE_NAME).
    +                                  getString("BTN_SAVE_AS" /* NOI18N */),
    +                   FileDialog.SAVE);
    +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/installation.html b/utils/jalopy/docs/installation.html new file mode 100755 index 0000000..4cc9499 --- /dev/null +++ b/utils/jalopy/docs/installation.html @@ -0,0 +1,33 @@ + + + + + Chapter 1. Installation + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Chapter 1. Installation

+Provides a quick introduction on how to install a binary Jalopy distribution. +

1.1. System requirements

+Jalopy requires a properly configured JDK or JRE version 1.3 or later on +your system. +

+Jalopy depends on and comes with several freely available Java libraries. For more +information regarding this 3rd party libraries refer to Appendix A, Library Dependencies. +

Incompatibility with Sun JDK 1.4

+The contained Javadoc parser may not work properly under Sun JDK 1.4. Refer to +Section 4.3.9, “Javadoc” for more information regarding this issue. +

1.2. Installing Jalopy

+Installation depends on the distribution you received. Please refer to the individual +Plug-in chapters in Part II, “Plug-ins” for detailed information. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/introduction.html b/utils/jalopy/docs/introduction.html new file mode 100755 index 0000000..5f3f803 --- /dev/null +++ b/utils/jalopy/docs/introduction.html @@ -0,0 +1,38 @@ + + + + + Introduction + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Introduction

+Jalopy is a source code formatting tool for the Sun Java Programming Language. +It can insert and remove indentation, enforce brace styles, wrap lines, sort +and group imports, add headers and footers, handle whitespace, insert/remove +and correct Javadoc entries to match method signatures and much more. +

+If your development team can agree on a coding style, Jalopy can help you +maintain it, without any browbeating or bloodletting. With a simple Ant target, +you can format all the source into the style, as often as you like. +

+Jalopy is written in Java and there are several Plug-ins available to integrate +the formatting engine into some of the more popular Java applications, including Ant, +Eclipse, JBuilder, JDeveloper, jEdit and NetBeans/Sun ONE Studio. +

+Jalopy is +"OSI Certified Open Source Software", +released under a BSD License. +For the individual license terms of the provided Plug-ins, please refer to the +different Plug-in chapters in Part II, “Plug-ins”. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/ix01.html b/utils/jalopy/docs/ix01.html new file mode 100755 index 0000000..5555e95 --- /dev/null +++ b/utils/jalopy/docs/ix01.html @@ -0,0 +1,19 @@ + + + + + Index + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Index

A

Alignment, Align
Assignments, Align
Method Def parameters, Align
Variables
assignments, Align
identifiers, Align
Ant, Ant Plug-in task
taskdef, Installation
Apache Software License, The Apache Software License, Version 1.1
Assignment operators, Spaces around
Auto-correction, General

B

Bitwise operators, Spaces around
Blank lines, General, Misc
After left curly brace, Misc
Before right curly brace, Misc
Case blocks, General
Classes, General
Control statements, General
Interfaces, General
Javadoc, General
Last Import statement, General
Methods/Constructors, General
Multi-line comments, General
Package statement, General
Single-line comments, General
Statement blocks, General
Variable declarations, General
Braces, Braces, Spaces around
cuddle, Empty braces
Empty, Empty braces
empty, Empty braces
insert, Insert braces
padding, Spaces around
remove, Remove braces
style, General
C, Styles
custom, Styles
GNU, Styles
Sun, Styles
whitespace, Whitespace
wrapping, Wrapping
Brackets, Spaces around
padding, Spaces around
Build, Building
Ant, Prerequisites
CVS, Prerequisites
DocBook, Prerequisites
Prerequisites, Prerequisites
XSLT, Prerequisites

C

Chunks, Chunks
By Blank lines, Chunks
By comments, Chunks
Code Convention, General
Code Inspector, Code Inspector
Naming, Naming
Comma, Space after
Command line, Synopsis
arguments, Synopsis
options, Synopsis
Comment
Header, Header
trailing, Sizes
Comment-based history, History
Comments
for history, History
Javadoc, Comments, General
Javadoc comments, Remove, General
Multi-line, Comments
Multi-line comments, Remove, Format
Pragma, Comments
Separator, Comments
Single-line, Comments
Single-line comments, Remove
Common Public License Version, Common Public License Version 1.0
Compatibility
source, Compliance
Compliance, Compliance
Console, Console Application
Continuation, Continuation
Cuddled braces, Empty braces

D

Deep indent, General
Dependencies, System requirements

E

Eclipse, Eclipse Plug-in
Empty braces, Empty braces
Empty statement, Empty braces
Environment, Environment
Environment variables, Environment
Extension, JDeveloper Extension

F

File-based history, History
Footer, Footer

G

GNU Free Documentation License, GNU Free Documentation License Version 1.1, March 2000
GNU GENERAL PUBLIC LICENSE, GNU GENERAL PUBLIC LICENSE Version 2, June 1991
Grouping depth, Grouping

H

Header, Header
Smart Mode, General
History, History
comment, History
file, History

I

Imports, Imports
collapse, Optimize
expand, Optimize
grouping,
on-demand, Optimize
optimization, Optimize
single-type, Optimize
sorting, General
grouping depth, Grouping
Indentation, Indentation
Aligment, Align
Continutation, Continuation
sizes, Sizes
Continuation, Sizes
extends, Sizes
General, Sizes
implements, Sizes
Leading, Sizes
Tabular, Sizes
throws, Sizes
Trailing comment, Sizes
Installation, Installation, Installing Jalopy
Ant, Installation, Installation
Eclipse Plug-in, Installation
JBuilder OpenTool, Installation
JDeveloper Plug-in, Installation
jEdit Plug-in, Installation
NetBeans Module, Installation
Sun ONE Studio Module, Installation
Interpolation, Environment
Introduction, Introduction

J

Javadoc comments, Comments, Remove, General
JBuilder, JBuilder OpenTool
JDeveloper, JDeveloper Extension
jEdit, jEdit Plug-in

L

Label, Wrap always
indent, Misc
wrap, Wrap always
Licenses
ANTLR, ANTLR SOFTWARE RIGHTS
Apache Software License, The Apache Software License, Version 1.1
BSD, The Jalopy BSD License
Common Public License Version, Common Public License Version 1.0
GNU Free Documentation License, GNU Free Documentation License Version 1.1, March 2000
GNU GENERAL PUBLIC LICENSE, GNU GENERAL PUBLIC LICENSE Version 2, June 1991
Sun Public License Version, SUN PUBLIC LICENSE Version 1.0
Line length, General
Line wrapping, Wrapping
Logical operators, Spaces around

M

Mathematical operators, Spaces around
Method Def parameters, Align, Wrap always
Module
NetBeans, NetBeans/Sun ONE Studio module
Sun ONE Studio, NetBeans/Sun ONE Studio module
Multi-line comments, Comments, Remove, Format

O

OpenTool, JBuilder OpenTool
Operators
Assignment, Spaces around
Bitwise, Spaces around
Logical, Spaces around
Mathematical, Spaces around
Relational, Spaces around
Shift, Spaces around
wrap after, Policy
wrap before, Policy

P

Padding, Spaces around
Parentheses, Space before, Spaces around, Misc
insert around expressions, Misc
padding, Spaces around
Plug-in
Ant, Ant Plug-in task
Console, Console Application
Eclipse, Eclipse Plug-in
JBuilder, JBuilder OpenTool
JDeveloper, JDeveloper Extension
jEdit, jEdit Plug-in
NetBeans, NetBeans/Sun ONE Studio module
Policy
Wrapping, Policy
Pragma comments, Comments
Printer, Printer
Projects, Projects

R

Regular expression
Tester, Regular expression tester
Regular expression tester, Regular expression tester
Regular expressions, Synopsis
Relational operators, Spaces around

S

Semicolon, Space after
Separator comment, Comments
Separator comments, Comments
Serial version UID, Misc
Settings, Settings
Settings directory, Settings
Shift operators, Spaces around
Single-line comments, Comments, Remove
Software License, The Jalopy BSD License, ANTLR SOFTWARE RIGHTS
Source compatibility, Compliance
Sun ONE Studio, NetBeans/Sun ONE Studio module
Sun Public License, SUN PUBLIC LICENSE Version 1.0
Synopsis, Synopsis
System requirements, System requirements

T

Tabs
size, Sizes
use, Misc
taskdef, Installation
Trailing Comment, Sizes
Type cast, Space after

U

Usage, Usage, Synopsis
examples, Examples

V

Variables
Environment, Environment
Interpolation, Environment

W

White Space, White Space
Whitespace
after, Space after
comma, Space after
semicolon, Space after
type cast, Space after
before, Space before
braces, Space before
brackets, Space before
colon, Space before
parentheses, Space before
padding, Spaces around
Assignment operators, Spaces around
Bitwise operators, Spaces around
Braces, Spaces around
Brackets, Spaces around
Logical operators, Spaces around
Mathematical operators, Spaces around
Parentheses, Spaces around
Relational operators, Spaces around
Shift operators, Spaces around
Wrapping, Wrapping
Deep indent, General
Line length, General
Method Def parameters, Wrap always
Policy, Policy
to top

\ No newline at end of file diff --git a/utils/jalopy/docs/javadoc.html b/utils/jalopy/docs/javadoc.html new file mode 100755 index 0000000..62e1c7c --- /dev/null +++ b/utils/jalopy/docs/javadoc.html @@ -0,0 +1,153 @@ + + + + + 4.3.9. Javadoc + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.9. Javadoc

+Let's you control all Javadoc-related options. Refer to the +Javadoc home page +for more information about Sun's Javadoc tool. +

Incompatibility with Sun JDK 1.4

+Note that the Javadoc parsing for Jalopy may not work properly under Sun +JDK 1.4 with the Client JVM. This seems to be a problem with the garbage +collection. You may want to enable the Server JVM as a workaround. +

4.3.9.1. General

+Controls the general handling of Javadoc comments. +

  • +Parse/Format comments +

    +Enables the parsing of existing Javadoc comments which in turn leads to a +reformatting of the original comment style during the printing. +

    +The used parser mostly supports HTML 3.2 and is not loose in a sense most browsers +are these days: tags not contained in the standard will produce errors. And you +should always strive to produce well-formed HTML +(it works for the <p>, <li>, +<dd>, <dt> and <dir> +tags, but anyway). +

    +Don't forget that the standard HTML metacharacters, such as less and greater signs +(<, >) or the ambersand (&), ... +and the commercial "at" sign (@) needs to be +escaped if not used as part of another HTML or Javadoc tag. +

    Table 4.2. Character entities

    SymbolNumeric EntityNamed EntityDescription
    &&038;&ampAmbersand
    <&060;&lt;Less than
    >&062;&gt;Greater than
    @&064; Commercial "at" sign

    Example 4.145. Escaping characters in Javadoc comments

    Don't use

    +/**
    + * @author <a href="mailto:first.last@company.com">first.last@company.com</a>
    + */
    +

    But rather use

    +/**
    + * @author <a href="mailto:first.last@company.com">first.last&064;company.com</a>
    + */
    +

  • +Correct tags +

    +Enables the auto-insertion or -removal of missing and obsolete Javadoc tags (all but the @throws tag, see below) and +the correction of misspelled Javadoc tag names. +

  • +Correct @throws tags +

    +Controls the auto-correction for @throws tags. If enabled, +Jalopy enforces a distinct @throws tag for every exception +thrown by a method/constructor. Thus, if a method only declares to throw an +IOException but throws a FileNotFoundException +(which is a subclass of the former) too, Jalopy will add a declaration for the latter. +

4.3.9.2. Generation

+Controls the auto-generation of missing Javadoc comments. +

4.3.9.2.1. Element/Level
  • +Element/Level +

    +Lets you selectively enable the auto-generation of missing Javadoc comments for +specific class elements and access levels. +

  • +Include inner classes +

    +Enables the auto-generation feature for inner classes, too. The +auto-generation does not apply to anonymous inner classes. +

4.3.9.2.2. Misc

+Let's you control miscellaneous Javadoc settings. +

  • +Field comments in single line +

    +Let's you specify how Javadoc comments of fields, that fit into one line, should be printed. +

    Example 4.146. Field Javadoc comment

    +/**
    + * What history policy should be used?
    + */
    +private History.Policy _historyPolicy = History.Policy.DISABLED;
    +

    +If enabled, Javadoc comments for fields will be printed in a single line, +if possible. +

    Example 4.147. Field Javadoc comment (shortened)

    +/** What history policy should be used? */
    +private History.Policy _historyPolicy = History.Policy.DISABLED;
    +

    +Note that this switch does not take affect for field template comments, +as template are not parsed but inserted as-is. +

    +Note further that the Javadoc parsing +must be enabled for this feature to work. +

4.3.9.3. Templates

+Let's you define templates to be inserted for the different declaration elements. +Each element (Class, Interface, Constructor, Method and Field) has its +own template. +

+Depending on the element type, a template consists of up to five parts that +together form a valid Javadoc comment. Note that the resulting comment will +be inserted as-is, and it is your responsibility to define the templates +in a consistent style. +

+You can use variable expressions throughout your templates. Read +Section 4.3.8, “Environment” for more information about this feature. +

4.3.9.4. Custom Tags

+Allows the definition of custom Javadoc tags to aid the syntax checking of +Javadoc comments, and enable the auto-correction of misspelled custom tag names. +

4.3.9.4.1. Standard Tags

+Allows the definition of custom Javadoc standard tag names. The current build-in Standard +tags are: +@author, +@deprecated, +@exception, +@param, +@return, +@see, +@serial, +@serialData, +@serialField, +@since, +@throws, +@todo, +@version +

+Use the Add... and Remove buttons +to add or remove items from the list. +

+Valid standard tag names have the form +@[a-zA-Z]+, e.g. @exclude. +

4.3.9.4.2. In-line Tags

+Allows the definition of custom Javadoc in-line tag names. +The current build-in In-line tags are: +@docRoot, +@inheritDoc, +@link, +@linkPlain, +@value +

+Use the Add... and Remove buttons +to add or remove items from the list. +

+Valid in-line tag names have the form +@[a-zA-Z]+, e.g. @mylink. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/license-antlr.html b/utils/jalopy/docs/license-antlr.html new file mode 100755 index 0000000..e89941c --- /dev/null +++ b/utils/jalopy/docs/license-antlr.html @@ -0,0 +1,47 @@ + + + + + Appendix C. ANTLR SOFTWARE RIGHTS + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Appendix C. ANTLR SOFTWARE RIGHTS

+ANTLR 1989-2000 Developed by jGuru.com (MageLang Institute), +http://www.ANTLR.org and +http://www.jGuru.com +

+We reserve no legal rights to the ANTLR -- it is fully in the +public domain. An individual or company may do whatever +they wish with source code distributed with ANTLR or the +code generated by ANTLR, including the incorporation of +ANTLR, or its output, into commerical software. +

+We encourage users to develop software with ANTLR. However, +we do ask that credit is given to us for developing +ANTLR. By "credit", we mean that if you use ANTLR or +incorporate any source code into one of your programs +(commercial product, research project, or otherwise) that +you acknowledge this fact somewhere in the documentation, +research report, etc... If you like ANTLR and have +developed a nice tool with the output, please mention that +you developed it using ANTLR. In addition, we ask that the +headers remain intact in our source code. As long as these +guidelines are kept, we expect to continue enhancing this +system and expect to make other tools available as they are +completed. +

+The primary ANTLR guy: +

+Terence Parr +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/license-apache.html b/utils/jalopy/docs/license-apache.html new file mode 100755 index 0000000..9ede370 --- /dev/null +++ b/utils/jalopy/docs/license-apache.html @@ -0,0 +1,62 @@ + + + + + Appendix D. The Apache Software License, Version 1.1 + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Appendix D. The Apache Software License, Version 1.1

+Copyright (C) 1999 The Apache Software Foundation. All rights reserved. +

+Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +

  1. +Redistributions of source code must retain the above copyright notice, +this list of conditions and the following disclaimer. +

  2. +Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. +

  3. +The end-user documentation included with the redistribution, if any, must +include the following acknowledgment: "This product includes software +developed by the Apache Software Foundation (http://www.apache.org/)." +Alternately, this acknowledgment may appear in the software itself, if +and wherever such third-party acknowledgments normally appear. +

  4. +The names "Ant" and "Apache Software Foundation" must not be used to +endorse or promote products derived from this software without prior +written permission. For written permission, please contact +apache@apache.org. +

  5. +Products derived from this software may not be called "Apache", nor may +"Apache" appear in their name, without prior written permission of the +Apache Software Foundation. +

+ THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +

+ This software consists of voluntary contributions made by many individuals + on behalf of the Apache Software Foundation. For more information on the + Apache Software Foundation, please see + http://www.apache.org. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/license-bsd.html b/utils/jalopy/docs/license-bsd.html new file mode 100755 index 0000000..91f08f8 --- /dev/null +++ b/utils/jalopy/docs/license-bsd.html @@ -0,0 +1,33 @@ + + + + + Appendix B. The Jalopy BSD License + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Appendix B. The Jalopy BSD License

+Copyright (c) 2001-2004, Marco Hunsicker. All rights reserved. +

+Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +

  • +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +

  • +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. +

  • +Neither the name of the Jalopy Group nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. +

+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/license-common-public.html b/utils/jalopy/docs/license-common-public.html new file mode 100755 index 0000000..809e66b --- /dev/null +++ b/utils/jalopy/docs/license-common-public.html @@ -0,0 +1,81 @@ + + + + + Appendix G. Common Public License Version 1.0 + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Appendix G. Common Public License Version 1.0

THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.

1. DEFINITIONS

+"Contribution" means: +

+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and +

b) in the case of each subsequent Contributor:

i) changes to the Program, and

ii) additions to the Program;

+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program. +

+"Contributor" means any person or entity that distributes the Program. +

+"Licensed Patents" mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program. +

+"Program" means the Contributions distributed in accordance with this Agreement. +

+"Recipient" means anyone who receives the Program under this Agreement, including all Contributors. +

2. GRANT OF RIGHTS

+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form. +

+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder. +

+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program. +

+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement. +

3. REQUIREMENTS

+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement. +

+a) it complies with the terms and conditions of this Agreement; and +

b) its license agreement:

+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose; +

+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits; +

+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and +

+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange. +

+When the Program is made available in source code form: +

+a) it must be made available under this Agreement; and +

+b) a copy of this Agreement must be included with each copy of the Program. +

+Contributors may not remove or alter any copyright notices contained within the Program. +

+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution. +

4. COMMERCIAL DISTRIBUTION

+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense. +

+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages. +

5. NO WARRANTY

+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations. +

6. DISCLAIMER OF LIABILITY

+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. +

7. GENERAL

+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable. +

+If Recipient institutes patent litigation against a Contributor with respect to a patent applicable to software (including a cross-claim or counterclaim in a lawsuit), then any patent licenses granted by that Contributor to such Recipient under this Agreement shall terminate as of the date such litigation is filed. In addition, if Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed. +

+All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive. +

+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. IBM is the initial Agreement Steward. IBM may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved. +

+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/license-gnu-doc.html b/utils/jalopy/docs/license-gnu-doc.html new file mode 100755 index 0000000..4adb80a --- /dev/null +++ b/utils/jalopy/docs/license-gnu-doc.html @@ -0,0 +1,374 @@ + + + + + Appendix F. GNU Free Documentation License Version 1.1, March 2000 + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Appendix F. GNU Free Documentation License Version 1.1, March 2000

+ Copyright (C) 2000 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +

+ Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. +

+0. PREAMBLE +

+The purpose of this License is to make a manual, textbook, or other +written document "free" in the sense of freedom: to assure everyone +the effective freedom to copy and redistribute it, with or without +modifying it, either commercially or noncommercially. Secondarily, +this License preserves for the author and publisher a way to get +credit for their work, while not being considered responsible for +modifications made by others. +

+This License is a kind of "copyleft", which means that derivative +works of the document must themselves be free in the same sense. It +complements the GNU General Public License, which is a copyleft +license designed for free software. +

+We have designed this License in order to use it for manuals for free +software, because free software needs free documentation: a free +program should come with manuals providing the same freedoms that the +software does. But this License is not limited to software manuals; +it can be used for any textual work, regardless of subject matter or +whether it is published as a printed book. We recommend this License +principally for works whose purpose is instruction or reference. +

+1. APPLICABILITY AND DEFINITIONS +

+This License applies to any manual or other work that contains a +notice placed by the copyright holder saying it can be distributed +under the terms of this License. The "Document", below, refers to any +such manual or work. Any member of the public is a licensee, and is +addressed as "you". +

+A "Modified Version" of the Document means any work containing the +Document or a portion of it, either copied verbatim, or with +modifications and/or translated into another language. +

+A "Secondary Section" is a named appendix or a front-matter section of +the Document that deals exclusively with the relationship of the +publishers or authors of the Document to the Document's overall subject +(or to related matters) and contains nothing that could fall directly +within that overall subject. (For example, if the Document is in part a +textbook of mathematics, a Secondary Section may not explain any +mathematics.) The relationship could be a matter of historical +connection with the subject or with related matters, or of legal, +commercial, philosophical, ethical or political position regarding +them. +

+The "Invariant Sections" are certain Secondary Sections whose titles +are designated, as being those of Invariant Sections, in the notice +that says that the Document is released under this License. +

+The "Cover Texts" are certain short passages of text that are listed, +as Front-Cover Texts or Back-Cover Texts, in the notice that says that +the Document is released under this License. +

+A "Transparent" copy of the Document means a machine-readable copy, +represented in a format whose specification is available to the +general public, whose contents can be viewed and edited directly and +straightforwardly with generic text editors or (for images composed of +pixels) generic paint programs or (for drawings) some widely available +drawing editor, and that is suitable for input to text formatters or +for automatic translation to a variety of formats suitable for input +to text formatters. A copy made in an otherwise Transparent file +format whose markup has been designed to thwart or discourage +subsequent modification by readers is not Transparent. A copy that is +not "Transparent" is called "Opaque". +

+Examples of suitable formats for Transparent copies include plain +ASCII without markup, Texinfo input format, LaTeX input format, SGML +or XML using a publicly available DTD, and standard-conforming simple +HTML designed for human modification. Opaque formats include +PostScript, PDF, proprietary formats that can be read and edited only +by proprietary word processors, SGML or XML for which the DTD and/or +processing tools are not generally available, and the +machine-generated HTML produced by some word processors for output +purposes only. +

+The "Title Page" means, for a printed book, the title page itself, +plus such following pages as are needed to hold, legibly, the material +this License requires to appear in the title page. For works in +formats which do not have any title page as such, "Title Page" means +the text near the most prominent appearance of the work's title, +preceding the beginning of the body of the text. +

+2. VERBATIM COPYING +

+You may copy and distribute the Document in any medium, either +commercially or noncommercially, provided that this License, the +copyright notices, and the license notice saying this License applies +to the Document are reproduced in all copies, and that you add no other +conditions whatsoever to those of this License. You may not use +technical measures to obstruct or control the reading or further +copying of the copies you make or distribute. However, you may accept +compensation in exchange for copies. If you distribute a large enough +number of copies you must also follow the conditions in section 3. +

+You may also lend copies, under the same conditions stated above, and +you may publicly display copies. +

+3. COPYING IN QUANTITY +

+If you publish printed copies of the Document numbering more than 100, +and the Document's license notice requires Cover Texts, you must enclose +the copies in covers that carry, clearly and legibly, all these Cover +Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on +the back cover. Both covers must also clearly and legibly identify +you as the publisher of these copies. The front cover must present +the full title with all words of the title equally prominent and +visible. You may add other material on the covers in addition. +Copying with changes limited to the covers, as long as they preserve +the title of the Document and satisfy these conditions, can be treated +as verbatim copying in other respects. +

+If the required texts for either cover are too voluminous to fit +legibly, you should put the first ones listed (as many as fit +reasonably) on the actual cover, and continue the rest onto adjacent +pages. +

+If you publish or distribute Opaque copies of the Document numbering +more than 100, you must either include a machine-readable Transparent +copy along with each Opaque copy, or state in or with each Opaque copy +a publicly-accessible computer-network location containing a complete +Transparent copy of the Document, free of added material, which the +general network-using public has access to download anonymously at no +charge using public-standard network protocols. If you use the latter +option, you must take reasonably prudent steps, when you begin +distribution of Opaque copies in quantity, to ensure that this +Transparent copy will remain thus accessible at the stated location +until at least one year after the last time you distribute an Opaque +copy (directly or through your agents or retailers) of that edition to +the public. +

+It is requested, but not required, that you contact the authors of the +Document well before redistributing any large number of copies, to give +them a chance to provide you with an updated version of the Document. +

+4. MODIFICATIONS +

+You may copy and distribute a Modified Version of the Document under +the conditions of sections 2 and 3 above, provided that you release +the Modified Version under precisely this License, with the Modified +Version filling the role of the Document, thus licensing distribution +and modification of the Modified Version to whoever possesses a copy +of it. In addition, you must do these things in the Modified Version: +

  1. + Use in the Title Page (and on the covers, if any) a title distinct + from that of the Document, and from those of previous versions + (which should, if there were any, be listed in the History section + of the Document). You may use the same title as a previous version + if the original publisher of that version gives permission. +

  2. + List on the Title Page, as authors, one or more persons or entities + responsible for authorship of the modifications in the Modified + Version, together with at least five of the principal authors of the + Document (all of its principal authors, if it has less than five). +

  3. + State on the Title page the name of the publisher of the + Modified Version, as the publisher. +

  4. +Preserve all the copyright notices of the Document. +

  5. + Add an appropriate copyright notice for your modifications + adjacent to the other copyright notices. +

  6. + Include, immediately after the copyright notices, a license notice + giving the public permission to use the Modified Version under the + terms of this License, in the form shown in the Addendum below. +

  7. + Preserve in that license notice the full lists of Invariant Sections + and required Cover Texts given in the Document's license notice. +

  8. + Include an unaltered copy of this License. +

  9. + Preserve the section entitled "History", and its title, and add to + it an item stating at least the title, year, new authors, and + publisher of the Modified Version as given on the Title Page. If + there is no section entitled "History" in the Document, create one + stating the title, year, authors, and publisher of the Document as + given on its Title Page, then add an item describing the Modified + Version as stated in the previous sentence. +

  10. + Preserve the network location, if any, given in the Document for + public access to a Transparent copy of the Document, and likewise + the network locations given in the Document for previous versions + it was based on. These may be placed in the "History" section. + You may omit a network location for a work that was published at + least four years before the Document itself, or if the original + publisher of the version it refers to gives permission. +

  11. + In any section entitled "Acknowledgements" or "Dedications", + preserve the section's title, and preserve in the section all the + substance and tone of each of the contributor acknowledgements + and/or dedications given therein. +

  12. + Preserve all the Invariant Sections of the Document, + unaltered in their text and in their titles. Section numbers + or the equivalent are not considered part of the section titles. +

  13. + Delete any section entitled "Endorsements". Such a section + may not be included in the Modified Version. +

  14. + Do not retitle any existing section as "Endorsements" + or to conflict in title with any Invariant Section. +

+If the Modified Version includes new front-matter sections or +appendices that qualify as Secondary Sections and contain no material +copied from the Document, you may at your option designate some or all +of these sections as invariant. To do this, add their titles to the +list of Invariant Sections in the Modified Version's license notice. +These titles must be distinct from any other section titles. +

+You may add a section entitled "Endorsements", provided it contains +nothing but endorsements of your Modified Version by various +parties--for example, statements of peer review or that the text has +been approved by an organization as the authoritative definition of a +standard. +

+You may add a passage of up to five words as a Front-Cover Text, and a +passage of up to 25 words as a Back-Cover Text, to the end of the list +of Cover Texts in the Modified Version. Only one passage of +Front-Cover Text and one of Back-Cover Text may be added by (or +through arrangements made by) any one entity. If the Document already +includes a cover text for the same cover, previously added by you or +by arrangement made by the same entity you are acting on behalf of, +you may not add another; but you may replace the old one, on explicit +permission from the previous publisher that added the old one. +

+The author(s) and publisher(s) of the Document do not by this License +give permission to use their names for publicity for or to assert or +imply endorsement of any Modified Version. +

+5. COMBINING DOCUMENTS +

+You may combine the Document with other documents released under this +License, under the terms defined in section 4 above for modified +versions, provided that you include in the combination all of the +Invariant Sections of all of the original documents, unmodified, and +list them all as Invariant Sections of your combined work in its +license notice. +

+The combined work need only contain one copy of this License, and +multiple identical Invariant Sections may be replaced with a single +copy. If there are multiple Invariant Sections with the same name but +different contents, make the title of each such section unique by +adding at the end of it, in parentheses, the name of the original +author or publisher of that section if known, or else a unique number. +Make the same adjustment to the section titles in the list of +Invariant Sections in the license notice of the combined work. +

+In the combination, you must combine any sections entitled "History" +in the various original documents, forming one section entitled +"History"; likewise combine any sections entitled "Acknowledgements", +and any sections entitled "Dedications". You must delete all sections +entitled "Endorsements." +

+6. COLLECTIONS OF DOCUMENTS +

+You may make a collection consisting of the Document and other documents +released under this License, and replace the individual copies of this +License in the various documents with a single copy that is included in +the collection, provided that you follow the rules of this License for +verbatim copying of each of the documents in all other respects. +

+You may extract a single document from such a collection, and distribute +it individually under this License, provided you insert a copy of this +License into the extracted document, and follow this License in all +other respects regarding verbatim copying of that document. +

+7. AGGREGATION WITH INDEPENDENT WORKS +

+A compilation of the Document or its derivatives with other separate +and independent documents or works, in or on a volume of a storage or +distribution medium, does not as a whole count as a Modified Version +of the Document, provided no compilation copyright is claimed for the +compilation. Such a compilation is called an "aggregate", and this +License does not apply to the other self-contained works thus compiled +with the Document, on account of their being thus compiled, if they +are not themselves derivative works of the Document. +

+If the Cover Text requirement of section 3 is applicable to these +copies of the Document, then if the Document is less than one quarter +of the entire aggregate, the Document's Cover Texts may be placed on +covers that surround only the Document within the aggregate. +Otherwise they must appear on covers around the whole aggregate. +

+8. TRANSLATION +

+Translation is considered a kind of modification, so you may +distribute translations of the Document under the terms of section 4. +Replacing Invariant Sections with translations requires special +permission from their copyright holders, but you may include +translations of some or all Invariant Sections in addition to the +original versions of these Invariant Sections. You may include a +translation of this License provided that you also include the +original English version of this License. In case of a disagreement +between the translation and the original English version of this +License, the original English version will prevail. +

+9. TERMINATION +

+You may not copy, modify, sublicense, or distribute the Document except +as expressly provided for under this License. Any other attempt to +copy, modify, sublicense or distribute the Document is void, and will +automatically terminate your rights under this License. However, +parties who have received copies, or rights, from you under this +License will not have their licenses terminated so long as such +parties remain in full compliance. +

+10. FUTURE REVISIONS OF THIS LICENSE +

+The Free Software Foundation may publish new, revised versions +of the GNU Free Documentation License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. See +http://www.gnu.org/copyleft. +

+Each version of the License is given a distinguishing version number. +If the Document specifies that a particular numbered version of this +License "or any later version" applies to it, you have the option of +following the terms and conditions either of that specified version or +of any later version that has been published (not as a draft) by the +Free Software Foundation. If the Document does not specify a version +number of this License, you may choose any version ever published (not +as a draft) by the Free Software Foundation. +

+ADDENDUM: How to use this License for your documents +

+To use this License in a document you have written, include a copy of +the License in the document and put the following copyright and +license notices just after the title page: +

+ Copyright (c) YEAR YOUR NAME. + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.1 + or any later version published by the Free Software Foundation; + with the Invariant Sections being LIST THEIR TITLES, with the + Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. + A copy of the license is included in the section entitled "GNU + Free Documentation License". +

+If you have no Invariant Sections, write "with no Invariant Sections" +instead of saying which ones are invariant. If you have no +Front-Cover Texts, write "no Front-Cover Texts" instead of +"Front-Cover Texts being LIST"; likewise for Back-Cover Texts. +

+If your document contains nontrivial examples of program code, we +recommend releasing these examples in parallel under your choice of +free software license, such as the GNU General Public License, +to permit their use in free software. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/license-gnu.html b/utils/jalopy/docs/license-gnu.html new file mode 100755 index 0000000..cbff6d1 --- /dev/null +++ b/utils/jalopy/docs/license-gnu.html @@ -0,0 +1,356 @@ + + + + + Appendix E. GNU GENERAL PUBLIC LICENSE Version 2, June 1991 + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Appendix E. GNU GENERAL PUBLIC LICENSE Version 2, June 1991

+Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +

+Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. +

+Preamble +

+The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. +

+When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. +

+To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. +

+For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. +

+We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. +

+Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. +

+Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. +

+The precise terms and conditions for copying, distribution and +modification follow. +

+ GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION +

+0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". +

+Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. +

+1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. +

+You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. +

+2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: +

+ a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. +

+ b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. +

+ c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) +

+These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. +

+Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. +

+In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. +

+3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: +

+ a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, +

+ b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, +

+ c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) +

+The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. +

+If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. +

+4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. +

+5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. +

+6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. +

+7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. +

+If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. +

+It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. +

+This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. +

+8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. +

+9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. +

+Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. +

+10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. +

+ NO WARRANTY +

+11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. +

+12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. +

+ END OF TERMS AND CONDITIONS +

+ How to Apply These Terms to Your New Programs +

+If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. +

+To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. +

+ <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> +

+ 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 +

+Also add information on how to contact you by electronic and paper mail. +

+If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: +

+ Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type 'show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type 'show c' for details. +

+The hypothetical commands 'show w' and 'show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than 'show w' and 'show c'; they could even be +mouse-clicks or menu items--whatever suits your program. +

+You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: +

+Yoyodyne, Inc., hereby disclaims all copyright interest in the program +`Gnomovision' (which makes passes at compilers) written by James Hacker. +

+<signature of Ty Coon>, 1 April 1989 +Ty Coon, President of Vice +

+This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/license-sun-public.html b/utils/jalopy/docs/license-sun-public.html new file mode 100755 index 0000000..de47d7c --- /dev/null +++ b/utils/jalopy/docs/license-sun-public.html @@ -0,0 +1,47 @@ + + + + + Appendix H. SUN PUBLIC LICENSE Version 1.0 + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Appendix H. SUN PUBLIC LICENSE Version 1.0

  1. +Definitions. +

    1.0.1. "Commercial Use" means distribution or otherwise making the Covered Code available to a third party.

    1.1. "Contributor" means each entity that creates or contributes to the creation of Modifications.

    1.2. "Contributor Version" means the combination of the Original Code, prior Modifications used by a Contributor, and the Modifications made by that particular Contributor.

    1.3. "Covered Code" means the Original Code or Modifications or the combination of the Original Code and Modifications, in each case including portions thereof and corresponding documentation released with the source code.

    1.4. "Electronic Distribution Mechanism" means a mechanism generally accepted in the software development community for the electronic transfer of data.

    1.5. "Executable" means Covered Code in any form other than Source Code.

    1.6. "Initial Developer" means the individual or entity identified as the Initial Developer in the Source Code notice required by Exhibit A.

    1.7. "Larger Work" means a work which combines Covered Code or portions thereof with code not governed by the terms of this License.

    1.8. "License" means this document.

    1.8.1. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein.

    1.9. "Modifications" means any addition to or deletion from the substance or structure of either the Original Code or any previous Modifications. When Covered Code is released as a series of files, a Modification is:

    1. Any addition to or deletion from the contents of a file containing Original Code or previous Modifications.

    2. Any new file that contains any part of the Original Code or previous Modifications.

    1.10. "Original Code"../ means Source Code of computer software code which is described in the Source Code notice required by Exhibit A as Original Code, and which, at the time of its release under this License is not already Covered Code governed by this License.

    1.10.1. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor.

    1.11. "Source Code"../ means the preferred form of the Covered Code for making modifications to it, including all modules it contains, plus any associated documentation, interface definition files, scripts used to control compilation and installation of an Executable, or source code differential comparisons against either the Original Code or another well known, available Covered Code of the Contributor's choice. The Source Code can be in a compressed or archival form, provided the appropriate decompression or de-archiving software is widely available for no charge.

    1.12. "You" (or "Your") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License or a future version of this License issued under Section 6.1. For legal entities, "You" includes any entity which controls, is controlled by, or is under common control with You. For purposes of this definition, "control"../ means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity.

  2. +Source Code License. +

    2.1 The Initial Developer Grant.

    The Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license, subject to third party intellectual property claims:

    (a) under intellectual property rights (other than patent or trademark) Licensable by Initial Developer to use, reproduce, modify, display, perform, sublicense and distribute the Original Code (or portions thereof) with or without Modifications, and/or as part of a Larger Work; and

    (b) under Patent Claims infringed by the making, using or selling of Original Code, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Code (or portions thereof).

    (c) the licenses granted in this Section 2.1(a) and (b) are effective on the date Initial Developer first distributes Original Code under the terms of this License.

    (d) Notwithstanding Section 2.1(b) above, no patent license is granted: 1) for code that You delete from the Original Code; 2) separate from the Original Code; or 3) for infringements caused by: i) the modification of the Original Code or ii) the combination of the Original Code with other software or devices.

    2.2. Contributor Grant.

    Subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license

    (a) under intellectual property rights (other than patent or trademark) Licensable by Contributor, to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof) either on an unmodified basis, with other Modifications, as Covered Code and/or as part of a Larger Work; and

    b) under Patent Claims infringed by the making, using, or selling of Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications made by that Contributor (or portions thereof); and 2) the combination of Modifications made by that Contributor with its Contributor Version (or portions of such combination).

    (c) the licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first makes Commercial Use of the Covered Code.

    (d) notwithstanding Section 2.2(b) above, no patent license is granted: 1) for any code that Contributor has deleted from the Contributor Version; 2) separate from the Contributor Version; 3) for infringements caused by: i) third party modifications of Contributor Version or ii) the combination of Modifications made by that Contributor with other software (except as part of the Contributor Version) or other devices; or 4) under Patent Claims infringed by Covered Code in the absence of Modifications made by that Contributor.

  3. Distribution Obligations.

    3.1. Application of License.

    The Modifications which You create or to which You contribute are governed by the terms of this License, including without limitation Section 2.2. The Source Code version of Covered Code may be distributed only under the terms of this License or a future version of this License released under Section 6.1, and You must include a copy of this License with every copy of the Source Code You distribute. You may not offer or impose any terms on any Source Code version that alters or restricts the applicable version of this License or the recipients' rights hereunder. However, You may include an additional document offering the additional rights described in Section 3.5.

    3.2. Availability of Source Code.

    Any Modification which You create or to which You contribute must be made available in Source Code form under the terms of this License either on the same media as an Executable version or via an accepted Electronic Distribution Mechanism to anyone to whom you made an Executable version available; and if made available via Electronic Distribution Mechanism, must remain available for at least twelve (12) months after the date it initially became available, or at least six (6) months after a subsequent version of that particular Modification has been made available to such recipients. You are responsible for ensuring that the Source Code version remains available even if the Electronic Distribution Mechanism is maintained by a third party.

    3.3. Description of Modifications.

    You must cause all Covered Code to which You contribute to contain a file documenting the changes You made to create that Covered Code and the date of any change. You must include a prominent statement that the Modification is derived, directly or indirectly, from Original Code provided by the Initial Developer and including the name of the Initial Developer in (a) the Source Code, and (b) in any notice in an Executable version or related documentation in which You describe the origin or ownership of the Covered Code.

    3.4. Intellectual Property Matters.

    (a) Third Party Claims. If Contributor has knowledge that a license under a third party's intellectual property rights is required to exercise the rights granted by such Contributor under Sections 2.1 or 2.2, Contributor must include a text file with the Source Code distribution titled "../LEGAL'' which describes the claim and the party making the claim in sufficient detail that a recipient will know whom to contact. If Contributor obtains such knowledge after the Modification is made available as described in Section 3.2, Contributor shall promptly modify the LEGAL file in all copies Contributor makes available thereafter and shall take other steps (such as notifying appropriate mailing lists or newsgroups) reasonably calculated to inform those who received the Covered Code that new knowledge has been obtained.

    (b) Contributor APIs.

    If Contributor's Modifications include an application programming interface ("API"../) and Contributor has knowledge of patent licenses which are reasonably necessary to implement that API, Contributor must also include this information in the LEGAL file.

    (c) Representations.

    Contributor represents that, except as disclosed pursuant to Section 3.4(a) above, Contributor believes that Contributor's Modifications are Contributor's original creation(s) and/or Contributor has sufficient rights to grant the rights conveyed by this License.

    3.5. Required Notices.

    You must duplicate the notice in Exhibit A in each file of the Source Code. If it is not possible to put such notice in a particular Source Code file due to its structure, then You must include such notice in a location (such as a relevant directory) where a user would be likely to look for such a notice. If You created one or more Modification(s) You may add your name as a Contributor to the notice described in Exhibit A. You must also duplicate this License in any documentation for the Source Code where You describe recipients' rights or ownership rights relating to Covered Code. You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Code. However, You may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear than any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer.

    3.6. Distribution of Executable Versions.

    You may distribute Covered Code in Executable form only if the requirements of Section 3.1-3.5 have been met for that Covered Code, and if You include a notice stating that the Source Code version of the Covered Code is available under the terms of this License, including a description of how and where You have fulfilled the obligations of Section 3.2. The notice must be conspicuously included in any notice in an Executable version, related documentation or collateral in which You describe recipients' rights relating to the Covered Code. You may distribute the Executable version of Covered Code or ownership rights under a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable version does not attempt to limit or alter the recipient's rights in the Source Code version from the rights set forth in this License. If You distribute the Executable version under a different license You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or any Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer.

    3.7. Larger Works.

    You may create a Larger Work by combining Covered Code with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Code.

  4. Inability to Comply Due to Statute or Regulation.

    +If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Code due to statute, judicial order, or regulation then You must: (a) comply with the terms of this License to the maximum extent possible; and (b) describe the limitations and the code they affect. Such description must be included in the LEGAL file described in Section 3.4 and must be included with all distributions of the Source Code. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it. +

  5. Application of this License.

    +This License applies to code to which the Initial Developer has attached the notice in Exhibit A and to related Covered Code. +

  6. Versions of the License.

    6.1. New Versions.

    Sun Microsystems, Inc. ("Sun") may publish revised and/or new versions of the License from time to time. Each version will be given a distinguishing version number.

    6.2. Effect of New Versions.

    Once Covered Code has been published under a particular version of the License, You may always continue to use it under the terms of that version. You may also choose to use such Covered Code under the terms of any subsequent version of the License published by Sun. No one other than Sun has the right to modify the terms applicable to Covered Code created under this License.

    6.3. Derivative Works.

    If You create or use a modified version of this License (which you may only do in order to apply it to code which is not already Covered Code governed by this License), You must: (a) rename Your license so that the phrases "Sun," "Sun Public License," or "SPL"../ or any confusingly similar phrase do not appear in your license (except to note that your license differs from this License) and (b) otherwise make it clear that Your version of the license contains terms which differ from the Sun Public License. (Filling in the name of the Initial Developer, Original Code or Contributor in the notice described in Exhibit A shall not of themselves be deemed to be modifications of this License.)

  7. DISCLAIMER OF WARRANTY.

    COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "../AS IS'' BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.

  8. TERMINATION.

    8.1. This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. All sublicenses to the Covered Code which are properly granted shall survive any termination of this License. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive.

    8.2. If You initiate litigation by asserting a patent infringement claim (excluding declaratory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You file such action is referred to as "Participant") alleging that:

    (a) such Participant's Contributor Version directly or indirectly infringes any patent, then any and all rights granted by such Participant to You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively, unless if within 60 days after receipt of notice You either: (i) agree in writing to pay Participant a mutually agreeable reasonable royalty for Your past and future use of Modifications made by such Participant, or (ii) withdraw Your litigation claim with respect to the Contributor Version against such Participant. If within 60 days of notice, a reasonable royalty and payment arrangement are not mutually agreed upon in writing by the parties or the litigation claim is not withdrawn, the rights granted by Participant to You under Sections 2.1 and/or 2.2 automatically terminate at the expiration of the 60 day notice period specified above.

    (b) any software, hardware, or device, other than such Participant's Contributor Version, directly or indirectly infringes any patent, then any rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are revoked effective as of the date You first made, used, sold, distributed, or had made, Modifications made by that Participant.

    8.3. If You assert a patent infringement claim against Participant alleging that such Participant's Contributor Version directly or indirectly infringes any patent where such claim is resolved (such as by license or settlement) prior to the initiation of patent infringement litigation, then the reasonable value of the licenses granted by such Participant under Sections 2.1 or 2.2 shall be taken into account in determining the amount or value of any payment or license.

    8.4. In the event of termination under Sections 8.1 or 8.2 above, all end user license agreements (excluding distributors and resellers) which have been validly granted by You or any distributor hereunder prior to termination shall survive termination.

  9. LIMITATION OF LIABILITY.

    UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.

  10. U.S. GOVERNMENT END USERS. +

    The Covered Code is a "commercial item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and "commercial computer software documentation,"../ as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Code with only those rights set forth herein.

  11. MISCELLANEOUS. +

    This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by California law provisions (except to the extent applicable law, if any, provides otherwise), excluding its conflict-of-law provisions. With respect to disputes in which at least one party is a citizen of, or an entity chartered or registered to do business in the United States of America, any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California, with venue lying in Santa Clara County, California, with the losing party responsible for costs, including without limitation, court costs and reasonable attorneys' fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License.

  12. RESPONSIBILITY FOR CLAIMS.

    As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability.

  13. MULTIPLE-LICENSED CODE.

    Initial Developer may designate portions of the Covered Code as ?Multiple-Licensed?. ?Multiple-Licensed? means that the Initial Developer permits you to utilize portions of the Covered Code under Your choice of the alternative licenses, if any, specified by the Initial Developer in the file described in Exhibit A.

Exhibit A - Sun Public License Notice.

The contents of this file are subject to the Sun Public License +Version 1.0 (the License); you may not use this file except in +compliance with the License. A copy of the License is available at +http://www.sun.com/ +

The Original Code is _________________. The Initial Developer of the +Original Code is ___________. Portions created by ______ are Copyright +(C)_________. All Rights Reserved.

Contributor(s): ______________________________________.

Alternatively, the contents of this file may be used under the terms +of the _____ license (the ?[___] License?), in which case the +provisions of [______] License are applicable instead of those above. +If you wish to allow use of your version of this file only under the +terms of the [____] License and not to allow others to use your +version of this file under the SPL, indicate your decision by deleting +the provisions above and replace them with the notice and other +provisions required by the [___] License. If you do not delete the +provisions above, a recipient may use your version of this file under +either the SPL or the [___] License.

[NOTE: The text of this Exhibit A may differ slightly from the text of +the notices in the Source Code files of the Original Code. You should +use the text of this Exhibit A rather than the text found in the +Original Code Source Code for Your Modifications.]

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/links.html b/utils/jalopy/docs/links.html new file mode 100755 index 0000000..98d05d1 --- /dev/null +++ b/utils/jalopy/docs/links.html @@ -0,0 +1,27 @@ + + + + + Jalopy - Links + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
+ This page generated: June 8 2004

Integrators

koalaGMLJava/Swing Code Generator
OpenUSSJ2EE-based E-Learning platform
FormsWizard, PLSQLWizardTranslators for Oracle applications to Java (commercial)

Related Open Source projects

Artistic StyleJava Source Code Indentation Filter
BaratCode Parser/Analyser
CheckStyleJava Coding Convention Checker
ImportScrubberJava Import Optimizer
JacobeJava Source Code Formatter (not Open Source, but free)
JCSCJava Coding Style Checker
JRefactoryJava Refactoring Tool
Mozart Development EnvironmentFramework for user extensible compilers and development tools
PMDJava source code analyser/checker
QDoxFramework for extracting class/interface/method definitions
RecoderSource Code Metaprogramming Framework
RevJavaReview assistant for Java programs
TransmogrifyJava Refactoring Tool

Related commercial projects

CodeCompanionJava Coding Convention Checker
JindentJava Source Code Formatter
to top

\ No newline at end of file diff --git a/utils/jalopy/docs/manual.html b/utils/jalopy/docs/manual.html new file mode 100755 index 0000000..91bc975 --- /dev/null +++ b/utils/jalopy/docs/manual.html @@ -0,0 +1,26 @@ + + + + + Jalopy User Manual + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Jalopy User Manual

Legal Notice

+Permission is granted to copy, distribute and/or modify this document under +the terms of the GNU Free Documentation License, Version 1.1 or any later +version published by the Free Software Foundation; with no "Invariant Sections", +"Front-Cover Texts" or "Back-Cover Texts", each as defined in the license. +

+For a copy of the license terms refer to Appendix F, GNU Free Documentation License Version 1.1, March 2000. +


to top

\ No newline at end of file diff --git a/utils/jalopy/docs/messages.html b/utils/jalopy/docs/messages.html new file mode 100755 index 0000000..e717378 --- /dev/null +++ b/utils/jalopy/docs/messages.html @@ -0,0 +1,61 @@ + + + + + 4.5. Messages + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.5. Messages

+Controls the Jalopy message output. +

+Given the sensitive nature of automatic source code processing, it is quite +important to keep informed about what is going on during the formatting process. +The default configuration should be sufficient for most users, so there should +seldom arise the need to change anything here. +

4.5.1. Categories

+Jalopy provides different message categories for setting verbosity level. +Changing the threshold from ERROR to DEBUG +successively displays more (albeit not necessarily more useful) messages. +

  • +General +

    +General purpose chain for I/O activity and all sorts of stuff that doesn't fit +elsewhere. +

  • +Parsing +

    +Message chain for messages related to the Java language parser. +

  • +Javadoc parsing +

    +Message chain for messages related to the parsing of Javadoc comments. +

  • +Transforming +

    +Message chain for messages related to the post-processing of the generated AST. +

  • +Printing +

    +Message chain for the main printing engine. +

  • +Javadoc Printing +

    +Message chain for Javadoc printing related messages. +

4.5.2. Misc

  • +Show stacktrace +

    +Enables or disables the inclusion of the current execution stack trace with +error messages. This proves useful in case you need to file a bug report as it +reveals the source of the error. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/misc.html b/utils/jalopy/docs/misc.html new file mode 100755 index 0000000..2213d1e --- /dev/null +++ b/utils/jalopy/docs/misc.html @@ -0,0 +1,166 @@ + + + + + 4.3.13. Misc + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.13. Misc

+Lets you control miscellaneous settings that doesn't fit elsewhere. +

4.3.13.1. Misc

  • +Insert expression parentheses +

    +It is always good advise to use more parentheses than you think you need. They +may not be needed, but they add clarity and don't cost anything. +

    Example 4.150. How is this expression evaluated?

    +int result = 12 + 4 % 3 * 7 / 8;
    +

    Example 4.151. How is this expression evaluated? (continued)

    +int result = 12 + ((4 % 3 * 7) / 8);
    +

  • +Insert serial version UID +

    +Common sense dictates to declare an explicit serial version UID in every +serializable class to eliminate the serial version UID as a potential source +of incompatibility (with the additional benefit of a small performance gain). +If this switch is enabled and the class directly dereives from either +java.io.Serializable or java.io.Externalizable, +Jalopy computes and inserts a serial version UID for the class. +

    +For this feature to work, the class that has its serial version UID computed +needs to be available on the classpath. +

  • +Insert logging conditional +

    +Typically, logging systems have a method that submits a logging message like + +

    +logger.debug("some message: " + someVar);
    +

    +

    +This is fine, but if the debug level is set such that this message will +NOT display, then time is wasted doing the string marshalling. +

    +Thus, the preferred way to do this is + +

    +if (logger.isDebugEnabled()) {
    +    logger.debug("some message: " + someVar);
    +}
    +

    + +which will only use CPU time if the log message is needed. Enabling this switch +will ensure that every logging call with the debug level set will be enclosed with +the conditional expression. +

    +Use this feature with care! The current implementation only supports the Jakarta +Log4J toolkit and is somewhat weak in that every method call called +debug is treated as a logging call which could be incorrect +in your application. However, it works fine for the l7dlog calls. +

  • +Insert trailing newline +

    +If enabled, Jalopy inserts an empty line at the end of every file. This may +help to avoid problems with certain text formatters and processors. +

    +Note that Jalopy always inserts at least one empty line after footers, so there +is no real need (but it doesn't hurt) to check the mark in case footer insertion +will be performed (see Section 4.3.11, “Footer”) +

  • +Array brackets after identifiers +

    +Lets you choose where the brackets of array types should be placed. +

    +By default, Jalopy prints the square brackets right after the array type. +

    Example 4.152. Array brackets after type

    +int[] a;
    +

    +But C/C++ programmers may expect them to appear after the identifier. +

    Example 4.153. Array brackets after identifier

    +int a[];
    +

  • +Force formatting +

    +Jalopy can keep track of which files have been formatted previously. +See Section 4.3.13.2, “History” below. If History is enabled, Jalopy will +exclude files that have a modification date coincident with the last formatting. +However, you can override this history check to force a format. For example, +you might need to update the copyright notice for the whole code base. Enabling +this switch ensures that all source files are always be formatted. Note that +this switch is only meaningful if the history feature is enabled. +

4.3.13.2. History

+The history feature offers a way to optimize the speed at which Jalopy processes +of a group of files repeatedly. Using history, Jalopy is able to track file +modifications between successive invocations, and only format those source +files which have actually changed, or which weren't processed previously. +This can save a huge amount of execution time for a project that is formatted +repeatedly over time. There are two methods for keeping history. +

  • +Use history file +

    +If you can't get along with a history header comment at the top of each source +file, but would like historical optimization, the file-based approach may work +for you. The history information of previous formatting will be saved in a file +history.dat under the Jalopy settings directory. +

    +Note that this file will grow over time, especially if one manages several big +projects. So the history file could become quite huge. As all history entries +are read into memory at startup, it could eat up quite a bit of memory space. +Therefore a little history viewer is provided which enables you to selectively +remove obsolete entries. +

    +In order to effectively use formatting of a project with several developers it is +nice to be able to only format files which have changed. There are three methods of +working out if a file has changed provided in a drop down. Timestamp will use the +modification time of the file, this does not work very well with source control +and multiple developers. There are two standard checksums available. These +work by taking a checksum of the file and comparing it to the one in the history file. +If this checksum is different, the file is parsed and formatted in memory and a new +checksum calculated. If the new checksum is different than the checksum for the +unformatted file, it is written to disk. This stops files that have just been updated +from source control from having being formatted (and timestamps updated). +

    +Use the View... button to display the history viewer. You +can selectively remove entries via the popup menu. +

  • +Use history comments +

    +Jalopy will insert a small comment in the first line of every source file. +The comment encodes the time a file was last formatted along with the package +name of the file. This method is precise and relatively foolproof but does not work well +with SCM tools. +

4.3.13.3. Backup

+For security reasons Jalopy creates a backup copy of the currently +processed file so it can be restored in case a severe error occured during the +formatting process. The original file is stored in the backup directory and normally +deleted after the newly formatted file has been successfully written. +

  • +Level +

    +The backup level defines how many numbered backups should be retained (up to 30). +The default is to never hold any backups. +

  • +Directory +

    +Specifies where file backups are stored. You should leave this setting untouched +in order to make your code convention portable across different systems and platforms. +

4.3.13.4. Threads

+Jalopy, more precisely the provided Plug-ins, are multi-threaded. On +multi-processor systems the work can be divided onto several processors to +speed up processing. +

  • +Number +

    +Specifies the number of processing threads to be used. This setting should be +equal to the number of processors your system has. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/part-core.html b/utils/jalopy/docs/part-core.html new file mode 100755 index 0000000..b2b5c1e --- /dev/null +++ b/utils/jalopy/docs/part-core.html @@ -0,0 +1,23 @@ + + + + + Part I. Jalopy core + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Jalopy core

+This part of the manual covers the core Jalopy engine: generic installation and +usage instructions along with a detailed discussion of the available switches +to customize application behavior and formatting output. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/part-plugins.html b/utils/jalopy/docs/part-plugins.html new file mode 100755 index 0000000..5cb37d1 --- /dev/null +++ b/utils/jalopy/docs/part-plugins.html @@ -0,0 +1,21 @@ + + + + + Part II. Plug-ins + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Plug-ins

+This part of the manual covers the different Plug-ins available. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-ant-config.html b/utils/jalopy/docs/plugin-ant-config.html new file mode 100755 index 0000000..7b3e32b --- /dev/null +++ b/utils/jalopy/docs/plugin-ant-config.html @@ -0,0 +1,27 @@ + + + + + 5.2. Configuration + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

5.2. Configuration

+To display the settings dialog you should use the provided wrapper script for +your platform (available in the /bin folder of the distribution). +

+Of course, you can setup the classpath yourself by adding all +.jar files as usual to the classpath and then type +

+java Preferences
+

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-ant-license.html b/utils/jalopy/docs/plugin-ant-license.html new file mode 100755 index 0000000..5bc23d3 --- /dev/null +++ b/utils/jalopy/docs/plugin-ant-license.html @@ -0,0 +1,25 @@ + + + + + 5.4. License + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

5.4. License

+The Ant Plug-in is "OSI Certified Open Source Software", +released under a BSD license. +

+See Appendix B, The Jalopy BSD License for the license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-ant-usage.html b/utils/jalopy/docs/plugin-ant-usage.html new file mode 100755 index 0000000..caa577a --- /dev/null +++ b/utils/jalopy/docs/plugin-ant-usage.html @@ -0,0 +1,129 @@ + + + + + 5.3. Usage + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

5.3. Usage

+The Jalopy task can take a few parameters to control the runtime behavior of +Jalopy. If omitted, your current preferences settings will be used. +

+Nested FileSets +can and should be used to specify the source files and/or directories. +

Table 5.1. Jalopy Ant task parameters

AttributeDescriptionRequired
backupIndicates whether backup copies for all file sources should be kept.No
classpathrevThe classpath to setup the class repository with, given as a reference to a path defined elsewhere. If you want the import optimization feature to work, you have to specify the classpath reference you use to compile your sources here.No
conventionSets the location to the convention file to use - given either relative to the project's basedir or as an absolute local path or internet address. If omitted, the current settings are used, if available. Otherwise the Jalopy build-in defaults will be used.No
destdirSets the destination directory to create/copy all formatting output into. If the given directory does not exist, it will be created. If this attribute is ommitted, all input files will simply be overriden.No
encodingSets the encoding that controls how Jalopy interprets text files containing characters beyond the ASCII character set. Defaults to the platform default encoding.No
failonerrorIndicates whether a run should be held if errors occured. Defaults to "true".No
fileSpecifies a single source file to format.Yes, if no fileset is specified.
fileformatSets the file format of the output files. The file format controls what end of line character is used. Either one of "UNIX", "DOS", MAC", "DEFAULT" or "AUTO" can be used. Defaults to "AUTO" (case insensitive).No
forceIndicates whether the formatting of files should be forced, even if the file is up-to-date.No
historySpecifies the history policy to use. Either one of + "COMMENT", "FILE" or + "NONE" can be used. + No
javadocIndicates whether Javadoc related messages should be printed.No
loglevelSpecifies the logging level for message output. Either one of + "ERROR", "WARN", "INFO" or "DEBUG" can be used.No
styleDEPRECATED. See conventionNo
threadsSpecifies the number of processing threads to use. Integer between 1 - 8. + No

5.3.1. Example

+The following example demonstrates how you can make use of the Jalopy Ant task. +

+Note that the "format" target depends on the "compile" target. +This way we can be sure that the given classpathref does cover all types used +in your sources (and this is an absolute necessity for the import optimization feature +to work reliable). +

Example 5.1. Example Ant build file

+<?xml version="1.0" ?>
+<project name="myProject" default="format" basedir="." >
+
+  <property name="dir.jalopy" value="/mystuff/jalopy/bin" />
+  <property name="dir.lib" value="${basedir}/ext/lib" />
+  <property name="dir.compile" value="${basedir}/tmp~/build/classes" />
+  <property name="dir.src.java" value="${basedir}/src/java" />
+
+  <!-- ==================================================================== -->
+  <!-- Defines the Jalopy task                                              -->
+  <!-- ==================================================================== -->
+  <taskdef name="jalopy"
+           classname="de.hunsicker.jalopy.plugin.ant.AntPlugin">
+    <!--
+
+      we did not copy the needed .jars into the /lib directory of Ant in order
+      to avoid possible classpath issues, so we have to specify a lookup
+      classpath here
+
+      -->
+    <classpath>
+      <fileset dir="${dir.jalopy}">
+        <include name="*.jar" />
+      </fileset>
+    </classpath>
+  </taskdef>
+
+
+  <!-- ==================================================================== -->
+  <!-- Defines the project classpath                                        -->
+  <!-- ==================================================================== -->
+  <path id="project.classpath" >
+
+    <!-- our compilation directory -->
+    <pathelement location="${dir.compile}" />
+
+    <!-- needed 3rd party libraries -->
+    <fileset dir="${dir.lib}" >
+      <include name="**/*.jar" />
+    </fileset>
+  </path>
+
+
+  <!-- ==================================================================== -->
+  <!-- Compiles the project sources                                         -->
+  <!-- ==================================================================== -->
+  <target name="compile"
+          depends="init">
+    <javac destdir="${dir.compile}"
+           fork="true">
+      <classpath refid="project.classpath" />
+      <src path="${dir.src.java}" />
+    </javac>
+  </target>
+
+
+  <!-- ==================================================================== -->
+  <!-- Formats all source files                                             -->
+  <!-- ==================================================================== -->
+  <target name="format" depends="compile">
+
+    <!--
+
+      Invokes Jalopy as follows:
+
+      - All formatted files will have unix fileformat (\n)
+      - Load your code convention from the given url
+      - Override the convention to use the file history feature
+      - Override the convention to use alder32 checksums of files for history testing
+      - Override the convention to use loglevel "info"
+      - Override the convention to use 2 threads
+      - The import optimization feature will work (if enabled in the active
+        convention), because a classpath reference is specified
+
+        Don't forget to setup an include pattern as Jalopy truly expects
+        valid Java source files as input!
+
+      -->
+    <jalopy fileformat="unix"
+            convention="http://www.foo.com/myConvention.xml"
+            history="file"
+            historymethod="adler32"
+            loglevel="info"
+            threads="2"
+            classpathref="project.classpath">
+      <fileset dir="${dir.src.java}">
+        <include name="**/*.java" />
+      </fileset>
+    </jalopy>
+  </target>
+</project>
+

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-ant.html b/utils/jalopy/docs/plugin-ant.html new file mode 100755 index 0000000..51fa29c --- /dev/null +++ b/utils/jalopy/docs/plugin-ant.html @@ -0,0 +1,66 @@ + + + + + Chapter 5. Ant Plug-in task + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Chapter 5. Ant Plug-in task

+Describes the installation and usage of the Jalopy Ant Plug-in task. +

5.1. Installation

+Explains the steps involved in getting the Ant task up and running. +

5.1.1. System requirements

+The Plug-in requires Ant 1.3 or higher. It has been tested with 1.3 and 1.5 versions of Ant. +Please feel free to notify of other success stories. +See Section 1.1, “System requirements” for the basic requirements to +run Jalopy. +

+To obtain more information about this wonderful build tool, visit the official +Ant home page at the Apache Jakarta site: +http://jakarta.apache.org/ant/ +

5.1.2. Installation

+The Plug-in comes either as a single .zip or compressed +.tar archive. Unzipping either one of these files into a directory +of your choice (referred to as <INST_DIR>) +will produce three subdirectories /bin, /docs +and /lib. +

+

+..
+  bin/       contains wrapper scripts for different platforms
+  docs/      contains the documentation
+  lib/       contains all necessary libraries
+

+

+Before you can use the Jalopy Ant task in your build scripts, you have to add +it to your system. Maybe the simplest way is to utilize the +<taskdef> element in your build script as follows: +

+<taskdef name="jalopy"
+         classname="de.hunsicker.jalopy.plugin.ant.AntPlugin">
+  <classpath>
+    <fileset dir="<INST_DIR>/lib">
+      <include name="*.jar" />
+    </fileset>
+  </classpath>
+</taskdef>
+

+If you rather want to add the provided libraries to your classpath (either by +copying the libraries into the /lib folder of your Ant +installation or setting up the classpath as usual), please be aware that the +provided parser (aelfred-xxx.jar) +is incompatible with Ant 1.4.1 or prior releases. If you happen to use one of +these outdated versions, the parser library must not be copied into the +/lib folder (or added to the classpath) otherwise Ant will fail to work! +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-console-license.html b/utils/jalopy/docs/plugin-console-license.html new file mode 100755 index 0000000..bfda380 --- /dev/null +++ b/utils/jalopy/docs/plugin-console-license.html @@ -0,0 +1,26 @@ + + + + + 6.3. License + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

6.3. License

+The Console Plug-in is "OSI Certified Open Source Software", +released under the GNU General Public License. See Appendix E, GNU GENERAL PUBLIC LICENSE Version 2, June 1991 +for more information. +

+See Appendix B, The Jalopy BSD License for the Jalopy license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-console-usage.html b/utils/jalopy/docs/plugin-console-usage.html new file mode 100755 index 0000000..2490d17 --- /dev/null +++ b/utils/jalopy/docs/plugin-console-usage.html @@ -0,0 +1,95 @@ + + + + + 6.2. Usage + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

6.2. Usage

+Presents the available command line options along with some usage examples. +

6.2.1. Synopsis

+To start Jalopy from the command line you may either use +

+jalopy [-options] args...
+

+or +

+java Jalopy [-options] args...
+

+or +

+java -jar jalopy-<version>.jar [-options] args...
+

+depending on your installation option. +

+You can specify as many args as you want, +where args describes either files, +directories or filter expressions. You can use any valid Perl5 (5.003) +regular expression as a filter expression. +

Options
+-c, --convention=FILE   use FILE as code convention file
+    --disclaimer        print software disclaimer
+-d, --dest=DIR          use DIR as base output directory
+-e, --encoding=WORD     assume WORD as encoding of input files where WORD
+                        describes one of the JDK supported encodings
+                        (if omitted, the platform default is used)
+-f, --format=WORD       use WORD as output file format where WORD can be
+                        either UNIX, DOS, MAC, AUTO (the default) or DEFAULT
+                        (all case-insensitive)
+    --force             force formatting even if file up-to-date
+-h, --help              display this help
+    --nobackup          don't keep backup files
+-r, --recursive{=NUM}   recurse into directories, up to NUM levels
+                        if NUM is omitted, recurses indefinitely
+-t, --thread=NUM        use NUM processing threads
+-v, --version           print product version and exit
+

+If no input file(s) are given, Jalopy starts listening on STDIN. +

6.2.2. Examples

+

Example 6.1. Sample command line usage

+jalopy -r myDirectory
+

+Formats all Java source files found in directory myDirectory +and all subdirectories. Creates backup copies of all files. The file format +of the original source files will be kept. +

+ +

Example 6.2. Sample command line usage

+jalopy -d /directory -f DOS
+myFile1.java myFile2.java
+

+Formats the two files myFile1.java and +myFile2.java and writes the new files into +directory /directory. Uses DOS as the file +format of the new files. +

+ +

Example 6.3. Sample command line usage

+jalopy -r 3 -d /directory ^A.*java
+

+Formats all Java source files found in the current directory and three +levels down that begin with a captial 'A' and writes the new files into +directory /tmp. The file format of the +original source files will be kept. +

+ +

Example 6.4. Sample command line usage

+type f:\test\in.java | jalopy > out.java
+

+Formats the file f:\test\in.java read from STDIN and +outputs its formatted contents to the file out.java in the +current directory. +

+ +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-console.html b/utils/jalopy/docs/plugin-console.html new file mode 100755 index 0000000..a9ab268 --- /dev/null +++ b/utils/jalopy/docs/plugin-console.html @@ -0,0 +1,57 @@ + + + + + Chapter 6. Console Application + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Chapter 6. Console Application

+The Console application provides a powerful command line interface for Jalopy. +

6.1. Installation

+Explains the steps involved to install the Console Plug-in. +

6.1.1. System requirements

+See Section 1.1, “System requirements” for the basic requirements to +run Jalopy. +

6.1.2. Installation

+The Plug-in comes either as a single .zip or compressed .tar file. +Unzipping either one of these files into a directory of your choice (referred +to as <INST_DIR>) will produce three +subdirectories /bin, /docs and +/lib. +

+

+..
+  bin/       contains wrapper scripts for different platforms
+  docs/      contains the documentation
+  lib/       contains all necessary libraries
+

+

+Wrapper scripts are provided for the common platforms, so you may want to add +the /bin folder to your path. If your platform +is not covered you should make use of the -jar option of the +Java application launcher (the java -jar command), since +this requires no classpath manipulation. If you don't want to use the +-jar option, you have to add the .jar +files as usual to your classpath. +

+For the Unix Bash shell, this means can be achieved using +

+export CLASSPATH=${CLASSPATH}:<INST_DIR>/lib/jalopy-console-<version>.jar
+

+For Windows, use something like +

+set CLASSPATH=%CLASSPATH%;<INST_DIR>\lib\jalopy-console-<version>.jar
+

+Refer to your system documentation on how to apply these changes more permanently. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-eclipse-integration.html b/utils/jalopy/docs/plugin-eclipse-integration.html new file mode 100755 index 0000000..b675ac8 --- /dev/null +++ b/utils/jalopy/docs/plugin-eclipse-integration.html @@ -0,0 +1,53 @@ + + + + + 7.2. Integration + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

7.2. Integration

+Shows how the Plug-in is integrated into the Eclipse IDE. +

7.2.1. Main menu bar

+Currently, the software adds a new item into the main menu bar of Eclipse +to launch the Jalopy settings dialog. Note that the this configuration +dialog is actually a Java Swing dialog launched in-process so the +appearance and behaviour may slightly differ compared to native applications. +A future version will bring tightly integration with the Eclipse workbench +preferences dialog. +

  • +Window->Jalopy Settings... +

    +Displays the Jalopy settings dialog. Use this item if you want to change the +settings that control the layout of any formatted code. +

+The menu item appears only for certain views/editors. If you want to +enable it permanently, mark +Window->Customize Perspective...->Action Sets->Jalopy + +

7.2.2. Java Editor context menu

+The software adds a new menu item to the context menu of Java editors. +

  • +Format with Jalopy +

    +Formats the contents of the editor. +

7.2.3. Project, Folder, File context menus

+The software adds a new menu item to the context menu of projects, folders and +Java source files in the navigation view of the Java perspective. +

  • +Format +

    +Formats the selected files. Depending on the object type (project, folder, file) formats +either all Java source files of the project, the contents of the selected folder(s) +(including subfolders) or the currently selected Java source file(s). +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-eclipse-license.html b/utils/jalopy/docs/plugin-eclipse-license.html new file mode 100755 index 0000000..9a92b1f --- /dev/null +++ b/utils/jalopy/docs/plugin-eclipse-license.html @@ -0,0 +1,26 @@ + + + + + 7.3. License + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

7.3. License

+The Eclipse Plug-in is "OSI Certified Open Source Software", +released under the Common Public License. See Appendix G, Common Public License Version 1.0 +for more information. +

+See Appendix B, The Jalopy BSD License for the Jalopy license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-eclipse.html b/utils/jalopy/docs/plugin-eclipse.html new file mode 100755 index 0000000..36549e8 --- /dev/null +++ b/utils/jalopy/docs/plugin-eclipse.html @@ -0,0 +1,49 @@ + + + + + Chapter 7. Eclipse Plug-in + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Chapter 7. Eclipse Plug-in

+Describes the installation and usage of the Jalopy Eclipse Plug-in. +

7.1. Installation

+Explains the steps involved to install the Eclipse Plug-in. +

7.1.1. System requirements

+This Plug-in requires Eclipse 2.0 or higher. It has only been tested with Eclipse 2.0. +See Section 1.1, “System requirements” for the basic requirements +to run Jalopy. +

+To obtain more information about this powerful IDE, visit the official +Eclipse homepage: +http://www.eclipse.org/ +

7.1.2. Installation

+The Plug-in comes either as a single .zip or +compressed .tar archive. Unzipping either one of these +files into a directory of your choice (referred to as +<INST_DIR>) will produce two +subdirectories /de.hunsicker.jalopy.plugin.eclipse_version +and /docs. +

+

+..
+  de.hunsicker.jalopy.plugin.eclipse_version/    contains the Plug-in files
+  docs/                                          contains the documentation
+

+

+Copy the de.hunsicker.jalopy.plugin.eclipse_version +folder into your Eclipse plugin directory and +restart Eclipse. That's all there is to it, you are now ready to run Jalopy +from within Eclipse. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-jbuilder-integration.html b/utils/jalopy/docs/plugin-jbuilder-integration.html new file mode 100755 index 0000000..6aa708f --- /dev/null +++ b/utils/jalopy/docs/plugin-jbuilder-integration.html @@ -0,0 +1,49 @@ + + + + + 8.2. Integration + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

8.2. Integration

+Shows how the Plug-in is integrated into the JBuilder IDE. +

8.2.1. AppBrowser main menu

+The software adds two new menu items into the main menu of the AppBrowser to +seamlessly integrate with JBuilder: +

  • +Project->Format <file> (Ctrl-Shift-F10) +

    +Formats the current editor view. Use this item if you need to format the +current opened file. +

    +Only available if there is an open view that contains a Java source file. +

  • +Tools->Jalopy Options.... +

    +Displays the Jalopy settings dialog. +

    +Use this item if you want to configure your settings to control the +layout of any formatted code. +

8.2.2. Project pane popup-menu

+There will also be a new menu item available at the end of the popup-menu of +the Project pane: Format. Use this item if you want +to format several files at once. All currently selected files are formatted. +

+If it happens that a file has an open editor view, this view will be updated, +not the actual file. You have to save the view first to see the physical file +updated. +

8.2.3. Editor view popup menu +

+Both the Format <file> and Jalopy Options... items can be also reached via the popup menu of the active editor view. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-jbuilder-license.html b/utils/jalopy/docs/plugin-jbuilder-license.html new file mode 100755 index 0000000..e1deb40 --- /dev/null +++ b/utils/jalopy/docs/plugin-jbuilder-license.html @@ -0,0 +1,25 @@ + + + + + 8.3. License + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

8.3. License

+The JBuilder Plug-in is "OSI Certified Open Source Software", +released under a BSD license. +

+See Appendix B, The Jalopy BSD License for the license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-jbuilder.html b/utils/jalopy/docs/plugin-jbuilder.html new file mode 100755 index 0000000..ed2e836 --- /dev/null +++ b/utils/jalopy/docs/plugin-jbuilder.html @@ -0,0 +1,50 @@ + + + + + Chapter 8. JBuilder OpenTool + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Chapter 8. JBuilder OpenTool

+Describes the installation and usage of the Jalopy JBuilder Plug-in OpenTool. +

8.1. Installation

+Explains the steps involved to install the JBuilder Plug-in. +

8.1.1. System requirements

+The JBuilder Plug-in requires JBuilder 5.0 or higher. It has only been tested with JBuilder +Personal 6.0 and 7.0. See Section 1.1, “System requirements” +for the basic requirements to run Jalopy. +

+To obtain more information about this +powerful IDE, visit the official JBuilder homepage at the Borland site: +http://www.borland.com/jbuilder/ +

8.1.2. Installation

+The Plug-in comes either as a single .zip or compressed .tar file. +Unzipping either one of these files into a directory of your choice (referred +to as <INST_DIR>) will produce two +subdirectories /docs and /lib. +

+

+..
+  docs/      contains documentation
+  lib/       contains all necessary libraries
+

+

+Remove all files from any prior Jalopy version from +your JBuilder extension directory (/lib/ext). +

+Further installation is simple: just copy all files from your +<INST_DIR>/lib folder +into the /lib/ext directory of your JBuilder distribution. +JBuilder will then need to be restarted before Jalopy begins working. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-jdev-integration.html b/utils/jalopy/docs/plugin-jdev-integration.html new file mode 100755 index 0000000..7930ed1 --- /dev/null +++ b/utils/jalopy/docs/plugin-jdev-integration.html @@ -0,0 +1,54 @@ + + + + + 9.2. Integration + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

9.2. Integration

+Shows how the Plug-in is integrated into the JDeveloper IDE. +

9.2.1. Navigator context menu

+The software adds a new menu item into the context popup menu of the Navigator: +

  • +Format [Workspace|Project] +

    +By selecting the "Format" menu item, all Java sources of the +selected node are formatted according to the current Jalopy preferences. +

    +The item appears in the popup menu if the user clicks the right mouse button on +a Java source node or any other parent node that may contain Java sources +(such as Workspace, Project, Directory, EJB or BC4J nodes). +

9.2.2. Java editor context menu

+The software adds a new menu item into the context popup menu of Java code editors: +

  • +Format +

    +By selecting the "Format" menu item, the contents of the active code editor view +are formatted according to the current Jalopy preferences. +

9.2.3. Preferences dialog

+The Jalopy preferences are integrated into the preferences dialog of +JDeveloper 9i which is reachable through the +Tools->Preferences... +menu. +Each Jalopy preferences page is added as a subentry to the main Jalopy +preferences entry. +

+Jalopy preferences are stored in the $HOME/.jalopy directory. +This is in contrast to other JDeveloper preferences which are stored within the +IDE configuration files. It is intentional in order to allow reuse of Jalopy +preferences between different IDEs. Note that in this release, Jalopy +preferences are stored whenever the user leaves a page. If the user moves to +another settings page, all settings are stored to disk even if the user +chooses to cancel the preferences dialog later on. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-jdev-license.html b/utils/jalopy/docs/plugin-jdev-license.html new file mode 100755 index 0000000..3bc3b04 --- /dev/null +++ b/utils/jalopy/docs/plugin-jdev-license.html @@ -0,0 +1,25 @@ + + + + + 9.3. License + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

9.3. License

+The JDeveloper Plug-in is "OSI Certified Open Source Software", +released under a BSD license. +

+See Appendix B, The Jalopy BSD License for the license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-jdev.html b/utils/jalopy/docs/plugin-jdev.html new file mode 100755 index 0000000..396105c --- /dev/null +++ b/utils/jalopy/docs/plugin-jdev.html @@ -0,0 +1,49 @@ + + + + + Chapter 9. JDeveloper Extension + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Chapter 9. JDeveloper Extension

+Describes the installation and usage of the Jalopy JDeveloper Plug-in Extension. +

9.1. Installation

+Explains the steps involved to install the JDeveloper Plug-in. +

9.1.1. System requirements

+The JDeveloper Plug-in requires Oracle9i JDeveloper or later. 1.1.3 is the +latest version and has only been tested with JDeveloper 10g Production. Older +releases may work on JDeveloper 9.0.2 and 9.0.3. See Section 1.1, “System requirements” for the basic +requirements to run Jalopy. +

+To obtain more information about this powerful IDE, visit the official JDeveloper homepage +at the Oracle site: +http://otn.oracle.com/products/jdev/ +

9.1.2. Installation

+The Plug-in comes either as a single .zip or +compressed .tar file. Unzipping either one of these files +into a directory of your choice (referred to as <INST_DIR>) +will produce two subdirectories /docs and /lib. +

+

+..
+  docs/      contains the documentation
+  lib/       contains all necessary libraries
+

+

+Further installation is simple: just copy all files from the +<INST_DIR>/lib folder +into the /jdev/lib/ext directory of your JDeveloper +distribution. JDeveloper will then need to be restarted before Jalopy begins +working. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-jedit-integration.html b/utils/jalopy/docs/plugin-jedit-integration.html new file mode 100755 index 0000000..967c266 --- /dev/null +++ b/utils/jalopy/docs/plugin-jedit-integration.html @@ -0,0 +1,40 @@ + + + + + 10.2. Integration + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

10.2. Integration

+Shows how the Plug-in is integrated into jEdit. +

+The software adds a new menu item group into the Plugins +menu of the editor view. Available are two new menu items: +

  • +Plugins->Jalopy->Format current Buffer. +

    +Formats the contents of the active text area. +

    +Note that this menu item reflects the state of the text area: it will only be enabled +if the current edit mode is actually the java mode. +

  • +Plugins->Jalopy->Jalopy Options.... +

    +Displays the Jalopy settings dialog. +

    +Use this item if you want to change your settings to control the +layout of any formatted code. +

+These options are available under jEdit's Global Options dialog, too. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-jedit-license.html b/utils/jalopy/docs/plugin-jedit-license.html new file mode 100755 index 0000000..8c2817a --- /dev/null +++ b/utils/jalopy/docs/plugin-jedit-license.html @@ -0,0 +1,26 @@ + + + + + 10.3. License + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

10.3. License

+The jEdit Plug-in is "OSI Certified Open Source Software", +released under a BSD license. +

+See Appendix B of the manual +for the license and refer to Appendix A for +the license terms of the accompanying 3rd party libraries. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-jedit.html b/utils/jalopy/docs/plugin-jedit.html new file mode 100755 index 0000000..f069d64 --- /dev/null +++ b/utils/jalopy/docs/plugin-jedit.html @@ -0,0 +1,54 @@ + + + + + Chapter 10. jEdit Plug-in + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Chapter 10. jEdit Plug-in

+Describes the installation and usage of the Jalopy jEdit Plug-in. +

10.1. Installation

+Explains the steps involved to install the jEdit Plug-in. +

10.1.1. System requirements

+The Jalopy jEdit Plug-in requires at least jEdit 4.1pre1 and MessageView 0.1.0. +If you want to import/exprt XML settings, you need the XML Plug-in also. +Refer to the Jalopy user manual for the basic requirements to run Jalopy (You +may find the latest version on the Jalopy website, +http://jalopy.sf.net/installation.html) +

+To obtain more information about this wonderful Editor, visit the official +jEdit homepage: +http://www.jedit.org/ +

10.1.2. Installation

+The Plug-in comes either as a single .zip or compressed +.tar archive. Unzipping either one of these files into a directory +of your choice (referred to as <INST_DIR>) will +produce two subdirectories /docs and /lib. +

+

+..
+  docs/      contains the documentation
+  lib/       contains all necessary libraries
+

+

+If there is already an older version of Jalopy installed, you have to remove it +prior to install. Open the Plugin Manager via +Plugins->Plugin Manager, select the Jalopy Java Source Code Formatter entry and +press Remove Plugins. +

+Further installation is simple: just copy all .jar files +contained in the <INST_DIR>/lib folder +into the /jars directory of your jEdit distribution. +jEdit will then need to be restarted before Jalopy begins working. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-netbeans-integration.html b/utils/jalopy/docs/plugin-netbeans-integration.html new file mode 100755 index 0000000..e79f6a6 --- /dev/null +++ b/utils/jalopy/docs/plugin-netbeans-integration.html @@ -0,0 +1,46 @@ + + + + + 11.2. Integration + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

11.2. Integration

+Shows how the Plug-in is integrated into the NetBeans IDE. +

11.2.1. Workspace main menu

+The software adds two new menu items into the main menu of the current +Workspace to seamlessly integrate with NetBeans: +

  • +Build->Format [All] (Ctrl-Shift-F10). +

    +Formats the currently selected node(s). +

    +Only available if there are indeed nodes selected which represents or contains +Java source files. +

  • +Tools->Jalopy Options.... +

    +Displays the Jalopy settings dialog. +

    +Use this item if you want to change your settings to control the +layout of any formatted code. +

11.2.2. Explorer popup-menu

+The Format [All] item can be also reached via the +popup menu of the Explorer. Note that the item only appears for folder nodes +or plain Java source files. It does not work for form based nodes. +

+If it happens that a file has an open editor view, this view will be updated, +not the actual file. You have to save the view first to see the physical file +updated. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-netbeans-license.html b/utils/jalopy/docs/plugin-netbeans-license.html new file mode 100755 index 0000000..cff0efe --- /dev/null +++ b/utils/jalopy/docs/plugin-netbeans-license.html @@ -0,0 +1,26 @@ + + + + + 11.3. License + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

11.3. License

+The NetBeans Plug-in is "OSI Certified Open Source Software", +released under the Sun Public License. See Appendix H, SUN PUBLIC LICENSE Version 1.0 +for more information. +

+See Appendix B, The Jalopy BSD License for the Jalopy license +and refer to Appendix A, Library Dependencies for the license terms of the accompanying 3rd party libraries. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugin-netbeans.html b/utils/jalopy/docs/plugin-netbeans.html new file mode 100755 index 0000000..ff1bca4 --- /dev/null +++ b/utils/jalopy/docs/plugin-netbeans.html @@ -0,0 +1,59 @@ + + + + + Chapter 11. NetBeans/Sun ONE Studio module + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Chapter 11. NetBeans/Sun ONE Studio module

+Describes the installation and usage of the Jalopy NetBeans/Sun ONE Studio Plug-in module. +

11.1. Installation

+Explains the steps involved to install the NetBeans Plug-in module. +

11.1.1. System requirements

+The Plug-in requires NetBeans 3.3 (or above) or Sun ONE Studio 4. It has only been +tested with NetBeans 3.4. +See Section 1.1, “System requirements” for the basic requirements +to run Jalopy. +

+To obtain more information about this +powerful IDE, visit the official NetBeans homepage: +http://www.netbeans.org/ or the Sun ONE Studio +pages at Sun: +http://wwws.sun.com/software/sundev/jde/ +

11.1.2. Installation

+The Plug-in comes either as a single .zip or compressed +.tar file. Unzipping either one of these files into a directory +of your choice (referred to as <INST_DIR>) +will produce two subdirectories /docs and +/lib. +

+

+..
+  docs/      contains the documentation
+  lib/       contains all necessary libraries
+

+

+Now follow these steps to install the Jalopy Plug-in: +

  1. +Start NetBeans/Sun ONE Studio. +

  2. +Open the Update Center Wizard by selecting +Tools->Update Center... +(You need to have the Auto Update module enabled for this to work). +

  3. +On the first page 'Select Location of modules', choose 'Install Manually +Downloaded Modules (.nbm Files)', select the .nbm contained +in <INST_DIR>/lib and +proceed through all steps of the wizard as outlined. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/plugins.html b/utils/jalopy/docs/plugins.html new file mode 100755 index 0000000..a6e716d --- /dev/null +++ b/utils/jalopy/docs/plugins.html @@ -0,0 +1,23 @@ + + + + + Jalopy - Plug-ins + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
+ This page generated: June 8 2004

Plug-ins

+There are several Plug-ins available for Jalopy to add its extended formatting +capabilities to your favourite Java IDE or build tool. +

+Below you find a list with the current Plug-ins. Click on the entries +to get more information. +

+More to come! +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/printer.html b/utils/jalopy/docs/printer.html new file mode 100755 index 0000000..804a409 --- /dev/null +++ b/utils/jalopy/docs/printer.html @@ -0,0 +1,200 @@ + + + + + 4.3. Printer + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3. Printer

+Lets you control all printer related settings. +

4.3.1. Braces

+Controls the handling of curly braces (the Java block delimeters). +

4.3.1.1. General

+Controls how the enclosing block delimeters - left and right curly +brace - are printed. You can either choose from a predefined set of common +styles or build one on your own. +

4.3.1.1.1. Styles

+Controls which brace style will be used to lay out blocks. +

  • +C style +

    +Selects the C brace style. This style is sometimes called "Allman style" or "BSD style". +

    Example 4.1. C style

    +if (!isDone)
    +{
    +    doSomething();
    +}
    +else
    +{
    +    System.err.println("Finished");
    +}
    +

  • +Sun style +

    +Selects the Sun brace style. Sometimes called "K&R style". +

    Example 4.2. Sun style

    +if (!isDone) {
    +    doSomething();
    +} else {
    +    System.err.println("Finished");
    +}
    +

  • +GNU style +

    +Selects the GNU brace style. +

    Example 4.3. GNU style

    +if (!isDone)
    +  {
    +    doSomething();
    +  }
    +else
    +  {
    +    System.err.println("Finished");
    +  }
    +

  • +Custom style +

    +Selecting this option will enable you to freely choose between the different brace +style options discussed below. +

4.3.1.1.2. Wrapping

+Controls the brace wrapping options. +

  • +Newline before left brace +

    +If enabled, always prints a newline before the left curly brace. +

  • +Newline after right brace +

    +If enabled, prints a newline after the left curly brace (when possible). +

  • +Treat class/method blocks different +

    +It is common in the Java developer community to have the opening brace +at the end of the line of the keyword for all types of blocks (Sun brace style). +One may find the C++ convention of treating class/interface and method/constructor +blocks different from other blocks useful. With this switch you can achieve +exactly that: if enabled, class/interface and method/constructor blocks are +then always printed in C brace style (newline before left brace). +

  • +Treat class/method blocks different if wrapped +

    +With this switch enabled, the opening brace for class/interface or +method/constructor blocks will always be printed on a new line (C style), if +either the parameter list spawns several lines and a throws +clause follows, or one of the possible clauses (extends, +implements, throws) was wrapped. +

4.3.1.1.3. Whitespace

+Controls the indentation whitespace for the left and right curly brace. +

  • +Before left brace +

    +Number of spaces to print before the left curly brace. +

  • +After left brace +

    +Number of spaces to print after the left curly brace. +

  • +After right brace +

    +Number of spaces to print after the right curly brace. +

4.3.1.2. Misc

+Controls miscellaneous brace options. +

4.3.1.2.1. Insert braces

+Per definition braces are superfluous on single statements, but it is +a common recommendation that braces should be always used in such cases. +With this option, you can specify whether missing braces for single +statements should be inserted for the control statements if, +for, while and do-while. +

+Enabling this option for while statements would render +

Example 4.4. Brace insertion

+while (!isDone)
+    doSomething();
+

+into +

+while (!isDone)
+{
+    doSomething();
+}
+

4.3.1.2.2. Remove braces

+It is permittable to remove braces in case they are superfluous. This not only +applies to the control statements if, for, +while and do-while, but also to every +block in general (remember a block is just a sequence of statements, +local class declarations and local variable declaration statements within +braces). +

Example 4.5. Brace removal

+for (int i = 0; i < 100; i++)
+{
+    sum += value[i];
+}
+

+would become +

+for (int i = 0; i < 100; i++)
+    sum += value[i];
+

4.3.1.2.3. Empty braces

+Controls how empty braces should be handled. If no option is selected, +they are left untouched. +

Example 4.6. Empty braces

+if (in != null)
+{
+    try
+    {
+        in.close();
+    }
+    catch (IOException ignored)
+    {
+    }
+}
+

+All options don't apply to class/interface and method/constructor bodies but +are only used for control statements and blocks. +

  • +Insert empty statement + + + +

    +Inserts an empty statement to make it obvious for the reader that the empty braces +are intentional. +

    Example 4.7. Empty braces with empty statement

    +if (in != null)
    +{
    +    try
    +    {
    +        in.close();
    +    }
    +    catch (IOException ignored)
    +    {
    +        ;
    +    }
    +}
    +
  • +Cuddle braces +

    +Cuddles the braces. They will be printed right after the control statement. + + +

    Example 4.8. Cuddled empty braces

    +if (in != null)
    +{
    +    try
    +    {
    +        in.close();
    +    }
    +    catch (IOException ignored) {}
    +}
    +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/project.html b/utils/jalopy/docs/project.html new file mode 100755 index 0000000..fc4a9ca --- /dev/null +++ b/utils/jalopy/docs/project.html @@ -0,0 +1,40 @@ + + + + + 4.2. Projects + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.2. Projects

+Enables you to manage your Jalopy settings in a project-like manner. For every +project you define, Jalopy creates a new subdirectory (under its main settings directory), +where all related files will be stored. + +

+The list component displays all currently known project spaces. Click on an +entry to see what actions are available. +

+ +

+The different actions are: +

+ +

  • Add...

    Displays a dialog that lets you define a new project. The project +meta-information consists of a name and a short description. The name defines +the subdirectory where all project settings will reside, therefore you should +avoid characters that your platform does not allow to be used in file paths. +

  • Remove

    Lets you remove the selected project. A project may only be removed if it +is not active. The default project cannot be removed.

  • Activate

    Activates the selected project. The stored settings will be loaded and the +configuration dialog updates accordingly.

+

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/separation.html b/utils/jalopy/docs/separation.html new file mode 100755 index 0000000..29d2cb3 --- /dev/null +++ b/utils/jalopy/docs/separation.html @@ -0,0 +1,286 @@ + + + + + 4.3.5. Blank Lines + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.5. Blank Lines

+Controls the Jalopy Blank Lines settings: the insertion of blank lines to +separate statements or declarations with different functions or meanings. +

4.3.5.1. General

+Lets you specify the general blank lines sizes for different Java source file elements. +

  • +Package statement +

    +Lets you control how many blank lines should be printed after the package statement. +

    Example 4.115. 3 Blank lines after package statement

    package de.hunsicker.jalopy.printer;
    +<--
    +<--
    +<--
    +import antlr.collections.AST;
    +
    +import de.hunsicker.jalopy.parser.JavaAST;
    +import de.hunsicker.jalopy.parser.JavaTokenTypes;
    +
    +...
    +

  • +Last import statement +

    +Lets you control how many blank lines should be printed after the last import statement. +

    Example 4.116. 4 Blank lines after last import statement

    package de.hunsicker.jalopy.printer;
    +
    +import antlr.collections.AST;
    +
    +import de.hunsicker.jalopy.parser.JavaAST;
    +import de.hunsicker.jalopy.parser.JavaTokenTypes;
    +<--
    +<--
    +<--
    +<--
    +public class Printer
    +{
    +    ...
    +}
    +

  • +Classes +

    +Lets you control how many blank lines should be printed between two +class declarations. +

    Example 4.117. 2 Blank lines between two class declarations

    class One
    +{
    +    ...
    +}
    +<--
    +<--
    +class Two
    +{
    +    ...
    +}
    +

  • +Interfaces +

    +Lets you control how many blank lines should be printed between two +interface declarations. +

    Example 4.118. 3 Blank lines between two interface declarations

    interface One
    +{
    +    ...
    +}
    +<--
    +<--
    +<--
    +interface Two
    +{
    +    ...
    +}
    +

  • +Methods +

    +Lets you control how many blank lines should be printed between two +method/constructor declarations. +

    Example 4.119. 3 Blank lines between two method declarations

    public static Printer getInstance()
    +{
    +    return INSTANCE;
    +}
    +<--
    +<--
    +<--
    +public void print(AST node, ASTWriter out)
    +           throws IOException
    +{
    +    ...
    +}
    +

  • +Blocks +

    +Lets you control how many blank lines should be printed before and after +statement blocks (if-else , for, while, do-while, switch, try-catch-finally, synchronized). +Note that the 'Blank lines after' setting also applies for anonymous inner classes. +

    Example 4.120. 2 Blank lines between before and after blocks

    AST type = null;
    +<--
    +<--
    +switch (next.getType())
    +{
    +    case JavaTokenTypes.LPAREN :
    +        type = PrinterUtils.advanceToFirstNonParen(next);
    +        break;
    +    default :
    +        type = next;
    +        break;
    +}
    +<--
    +<--
    +AST ident = type.getFirstChild();
    +

  • +Declarations +

    +Lets you control how many blank lines should be printed before and after +variable declarations. +

  • +Case blocks +

    +Lets you control how many blank lines should be printed before each case +block of a switch expression. +

    Example 4.121. 3 Blank lines before case blocks

    switch (next.getType())
    +{
    +<--
    +<--
    +<--
    +    case JavaTokenTypes.LPAREN :
    +        type = PrinterUtils.advanceToFirstNonParen(next);
    +        break;
    +<--
    +<--
    +<--
    +    default :
    +        type = next;
    +        break;
    +}
    +

  • +Control statements +

    +Lets you control how many blank lines should be printed before the statements +return, break and continue. +

    Example 4.122. 2 Blank lines before case control statements

    switch (next.getType())
    +{
    +    case JavaTokenTypes.LPAREN :
    +        type = PrinterUtils.advanceToFirstNonParen(next);
    +<--
    +<--
    +        break;
    +
    +    default :
    +        type = next;
    +<--
    +<--
    +        break;
    +}
    +

  • +Single-line comments +

    +Lets you control how many blank lines should be printed before single-line +comments. +

  • +Multi-line comments +

    +Lets you control how many blank lines should be printed before multi-line +comments. +

  • +Javadoc comments +

    +Lets you control how many blank lines should be printed before Javadoc +comments. +

4.3.5.2. Misc

Lets you control miscellaneous separation settings.

4.3.5.2.1. Misc
  • +Blank lines after left curly brace +

    +Forces the given number of blank lines after left curly braces no matter +what your other blank lines settings say. +

    Example 4.123. Blank lines before blocks=1

    public void foo()
    +{
    +<--
    +    if (condition())
    +    {
    +<--
    +        if (anotherCondition())
    +        {
    +            doSomething();
    +        }
    +    }
    +}
    +

    Example 4.124. Blank lines before blocks=1, Blank lines after left curly braces=0

    public void foo()
    +{
    +    if (condition())
    +    {
    +        if (anotherCondition())
    +        {
    +            doSomething();
    +        }
    +    }
    +}
    +

  • +Blank lines before right curly brace +

    +Forces the given number of blank lines before closing curly braces no matter +what your other blank lines settings say. +

    Example 4.125. Blank lines before blocks=1

    public void foo()
    +{
    +    if (condititon())
    +    {
    +        if (anotherCondition())
    +        {
    +            doSomething();
    +<--
    +        }
    +<--
    +    }
    +<--
    +}
    +

  • +Keep Blank lines up to +

    +If enabled, retains up to the given number of blank lines found in the +original source. This only works for method or constructor bodies. Note that Jalopy +still takes your other blank lines settings into account. +

    Example 4.126. Source code with blank lines to separate code sections

    aMVString = new MultiValueString("abc");
    +<--
    +System.out.println("MV = "+aMVString);
    +<--
    +System.out.println("MV0 = "+aMVString.extract(0));
    +System.out.println("MV1 = "+aMVString.extract(1));
    +System.out.println("MV2 = "+aMVString.extract(2));
    +System.out.println("");
    +

    +If this feature is left disabled, Jalopy will print the individual lines according +to the current blank lines settings but won't try to retain any blank lines. +

4.3.5.2.2. Chunks

+Lets you define what makes a chunk: a section of associated statements. +

  • +By comments +

    +If enabled, a statement with a comment before is recognized as the start of a new +chunk. +

    Example 4.127. Aligning variable declarations

    +String        text  = "text";
    +int           a     = -1;
    +
    +// create a new entry
    +History.Entry entry = new History.Entry(text);
    +

    Example 4.128. Aligning variable declarations with chunking by comments

    +String text  = "text";
    +int    a     = -1;
    +
    +// create a new entry
    +History.Entry entry = new History.Entry(text);
    +

  • +By Blank lines +

    +If enabled, a statement which has one or more blank lines before is recognized +as the start of a new chunk. +

4.3.5.3. Comments

+Lets you control the behaviour of the separator comments. If the +sorting of class elements is enabled, Separator comments +can be inserted before every element section, to make it easier to identify the +different parts of a source file. +

Example 4.129. Separator comment

+//~ Methods ------------------------------------------------------------------
+

4.3.5.3.1. General
  • +Add separator comments +

    +Enables the insertions of separator comments. +

  • +Add separator comments for inner classes +

    +The insertion of separator comments for inner classes/interfaces may lead to +confusion, therefore you can control it here separately. +

4.3.5.3.2. Descriptions

Lets you define the description text for each of the different class elements.

4.3.5.3.3. Fill character

Lets you define the fill character for the comments.

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/settings.html b/utils/jalopy/docs/settings.html new file mode 100755 index 0000000..ff38d85 --- /dev/null +++ b/utils/jalopy/docs/settings.html @@ -0,0 +1,73 @@ + + + + + Chapter 4. Settings + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Chapter 4. Settings

+Provides a detailed discussion of all available settings to configure Jalopy. +

+Jalopy stores all settings as files inside its +Settings directory (or subdirectories thereof). +This directory is located in the user home directory ($HOME/.jalopy). +

+A graphical user interface is provided to easily configure the settings. +Please refer to the individual Plug-in chapters in Part II, “Plug-ins” +for information on how to display it from within the Plug-in you received. +

4.1. General

+Jalopy stores its settings in a binary file +$HOME/.jalopy/PROJECT_DIR/preferences.dat. +However you can import/export your settings in both the binary, and a textual +XML format. A group of settings forms a code convention. +

4.1.1. Convention

+Lets you name a group of settings, a code convention. +

  • +Name +

    +The name of the code convention. The name must be no longer than 10 characters. +

  • +Description +

    +Stores a short description for the code convention. +

4.1.2. Compliance

+Lets you specify whether Java sources should be treated as JDK 1.3 or +as JDK 1.4 compatible. The latter means assert will be +recognized as a reserved keyword. +

  • +Source compatibility +

    +Lets you choose the JDK version to use for source compatibility. +

4.1.3. Import/Export

+Use the Import... and Export... +buttons to import an already-saved code convention, or export your current settings as +a new code convention. You can choose between the binary .jal format +or an XML representation. +

+Jalopy is able to import settings from both local and distributed locations. +Just specify a valid Internet address (either starting with http:// or +www.) for the latter. Jalopy will then attempt to synchronize +its settings with the given url on every invocation. That way it is easy to +share a single code convention across a group of developers. +

+Please note that versions prior to 1.0b8 stored the backup directory always as +an absolute file. Therefore after importing a code convention, you should +check whether this directory points to your preferred backup directory. This +advice holds true even for later versions in case you've changed the default +backup directory. +

+However if the backup directory setting is left untouched, the directory is +stored relative to the Jalopy settings directory. This way you can savely +share your code convention across different systems and platforms. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/site.css b/utils/jalopy/docs/site.css new file mode 100755 index 0000000..87ac575 --- /dev/null +++ b/utils/jalopy/docs/site.css @@ -0,0 +1,88 @@ +/** + $Id$ + */ +A { color: #00F; } +A:link { text-decoration: none; } +A:active { text-decoration: none; } +A:visited { text-decoration: none; } +A:hover { text-decoration: underline; } + +body { + font-size : 0.9em; + font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; + margin: 20px 20px 20px 20px; + padding-bottom:15px; + } +h1{ + font-weight : bold; + font-family : Verdana,Arial,Helvetica,sans-serif; +} + +h2{ + font-weight : bold; + font-family : Verdana,Arial,Helvetica,sans-serif; +} + +h3{ + font-weight : bold; + font-family : Verdana,Arial,Helvetica,sans-serif; +} + +h4{ + font-weight : bold; + font-family : Verdana,Arial,Helvetica,sans-serif; +} + +h5{ + font-weight : bold; + font-family : Verdana,Arial,Helvetica,sans-serif; +} + +hr{ + border : none; + background : #808080; + height : 1px; +} + +td,p,div,form,blockquote,ul,ol{ + font-family : Verdana,Arial,Helvetica,sans-serif; +} + +th{ + font-family : Verdana,Arial,Helvetica,sans-serif; +} + +.footer{ + color : #808080; + font-size : 9px; + font-family : Verdana,Arial,Helvetica,sans-serif; +} + +.sublogo{ + padding-bottom : 5px; + color : #333366; + font-size : 9px; + font-family : Arial,Helvetica,sans-serif; +} + +.logo{ + padding-left : 10px; + font-weight : bold; + font-size : 26pt; + font-family : Verdana,Arial,Helvetica,sans-serif; +} + +.navlink:link { color: #FFF; text-decoration: none; } +.navlink:active { color: #FFF; text-decoration: none; } +.navlink:visited { color: #FFF; text-decoration: none; } +.navlink:hover { color: #FFF; text-decoration: underline; } + +.navlink2:link { color : #000; text-decoration : none; } +.navlink2:active { color : #000; text-decoration : none; } +.navlink2:visited { color : #000; text-decoration : none; } +.navlink2:hover { color : #000; text-decoration : underline; } + +.shade{ + background-color: ; + background : #FDF5E6; +} \ No newline at end of file diff --git a/utils/jalopy/docs/sorting.html b/utils/jalopy/docs/sorting.html new file mode 100755 index 0000000..f1c46d7 --- /dev/null +++ b/utils/jalopy/docs/sorting.html @@ -0,0 +1,76 @@ + + + + + 4.3.12. Sorting + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.12. Sorting

Lets you tweak the sorting settings.

4.3.12.1. Declarations

+At first glance, sorting of class declaration elements may seem somewhat +obscure, but good sorting can lead to a reduction of complexity if the +location of each element is predictable. +

  • +Sort class elements +

    +Enables or disables the sorting of class elements. +

    Example 4.149. Sorted Java source file (with Separator comments)

    +class TypePrinter
    +    extends AbstractPrinter
    +{
    +    //~ Instance/static variables ----------------------------------------------
    +
    +    /** Singleton. */
    +    private final static Printer INSTANCE = new TypePrinter();
    +
    +    //~ Constructors -----------------------------------------------------------
    +
    +    /**
    +     * Creates a new TypePrinter object.
    +     */
    +    protected TypePrinter()
    +    {
    +    }
    +
    +    //~ Methods ----------------------------------------------------------------
    +
    +    public static Printer getInstance()
    +    {
    +        return INSTANCE;
    +    }
    +
    +    public void print(AST node, ASTWriter out)
    +               throws IOException
    +    {
    +        AST child = node.getFirstChild();
    +        PrinterFactory.create(child).print(child, out);
    +    }
    +}
    +

  • Ordering

    +You can specify the order in which static variable/initializer, instance variable, +instance initializer, constructor, method, inner class and interface elements +should appear in source files by selecting the element type and moving it up or +down the list. +

    +If you enable any of the check boxes, all elements of the selected type +(within a section) will be sorted too. First by access modifier +(public, protected, package protected, private) and - for two elements with the +same accessibility - lexicographically. For methods those which follow the Java +Bean pattern (getXXX, setXXX, isXXX) will be sorted first. +

4.3.12.2. Modifiers

+Enables or disables the sorting of declaration modifiers. +

  • Ordering

    +Lets you specify the order in which the individual modifiers should appear. +Select an entry and use the Up and Down +buttons to move it to the desired location. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/usage.html b/utils/jalopy/docs/usage.html new file mode 100755 index 0000000..7779394 --- /dev/null +++ b/utils/jalopy/docs/usage.html @@ -0,0 +1,21 @@ + + + + + Chapter 3. Usage + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

Chapter 3. Usage

Usage depends on the distribution you received. Please refer to the +individual Plug-in chapters in Part II, “Plug-ins” for details. +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/whitespace.html b/utils/jalopy/docs/whitespace.html new file mode 100755 index 0000000..9d2348e --- /dev/null +++ b/utils/jalopy/docs/whitespace.html @@ -0,0 +1,225 @@ + + + + + 4.3.2. White Space + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.2. White Space

+Controls the white space handling for the individual components of Java statements. +

4.3.2.1. Space before

+Lets you choose the components that should get one leading space inserted before them. +

  • +Method declaration parentheses +

    Example 4.9. Method declaration parentheses

    +public void someMethod()) {
    +  ...
    +}
    +
    +public void someMethod ()) {
    +  ...
    +}
    +

  • +Method call parentheses +

    Example 4.10. Method call parentheses

    +for (Iterator i = pointList.iterator(); i.hasNext();) {
    +    ...
    +}
    +
    +for (Iterator i = pointList.iterator (); i.hasNext ();) {
    +    ...
    +}
    +

  • +Statement parentheses +

    Example 4.11. Statement parentheses

    +while(!isDone)
    +    doSomething();
    +
    +while (!isDone)
    +    doSomething();
    +

  • +Braces +

    Example 4.12. Braces

    +    String[] values = new String[]{
    +        "One", "Two", "Three", "Four", "Five", "Six", "Seven"
    +    };
    +
    +    String[] values = new String[] {
    +        "One", "Two", "Three", "Four", "Five", "Six", "Seven"
    +    };
    +

  • +Brackets +

    Example 4.13. Brackets

    +for (i = 0; i < 100; i++)
    +    sum += value[i];
    +
    +for (i = 0; i < 100; i++)
    +    sum += value [i];
    +

  • +Brackets in types +

    Example 4.14. Brackets in types

    +String[] names = (String[])data.toArray(new String[]);
    +
    +String [] names = (String [])data.toArray(new String []);
    +

  • +Case colon +

    Example 4.15. Case colon

    +switch (character) {
    +    case 'A':
    +        break;
    +}
    +
    +switch (character) {
    +    case 'A' :
    +        break;
    +}
    +

4.3.2.2. Space after

+Lets you choose what components should have one trailing space inserted after the component. +

  • +Comma +

    Example 4.16. Comma

    +doSomething (a,b,c,d);
    +
    +doSomething (a, b, c, d);
    +

  • +Semicolon +

    Example 4.17. Semicolon

    +for (i=0;i<10;i++) ...
    +
    +for (i=0; i<10; i++) ...
    +

  • +Type Cast +

    Example 4.18. Type Cast

    +int line = ((JavaAST)node).getStartLine();
    +
    +int line = ((JavaAST) node).getStartLine();
    +

  • +Negation +

    +Prints a space after the unary operators Logical NOT (!) and Bitwise NOT (~). +

    Example 4.19. Logical NOT

    +while(!isDone) {
    +    doSomething();
    +}
    +
    +while(! isDone) {
    +    doSomething();
    +}
    +

4.3.2.3. Spaces around

+Controls what components should have both a leading and trailing space inserted. This is sometimes called "padding". + + +

  • +Assignment Operators + + + + +

    Example 4.20. Assignment Operators (=, +=, -=, *=, \=, %=, &=, |=, ^=, <<=, >>=, >>>=)

    +a=(b+c)*d;
    +a = (b+c)*d;
    +

  • +Logical Operators + + + +

    Example 4.21. Logical Operators (&&, ||)

    +if((LA(1)=='/')&&(LA(2)!='*'||(LA(2)=='*'&&LA(3)!='*'))) ...
    +
    +if((LA(1)=='/') && (LA(2)!='*' || (LA(2)=='*' && LA(3)!='*'))) ...
    +

  • +Relational Operators + + + + +

    Example 4.22. Relational Operators (==, !=, <, >, <=, >=)

    +if((LA(1)=='\n'||LA(1)=='\r')) ...
    +
    +if((LA(1) == '\n'||LA(1) == '\r')) ...
    +

  • +Bitwise Operators + + + +

    Example 4.23. Bitwise Operators (&, |, ^)

    +public static final boolean isUnix()
    +{
    +    return (getOperatingSystem()&PLAT_UNIX) != 0;
    +}
    +
    +public static final boolean isUnix()
    +{
    +    return (getOperatingSystem() & PLAT_UNIX) != 0;
    +}
    +

  • +Mathematical Operators + + + + +

    Example 4.24. Mathematical Operators (+, -, /, *, %)

    +a=(b+c)*d;
    +
    +a=(b + c) * d;
    +

  • +Shift Operators + + + +

    Example 4.25. Shift Operators (<<, >>, >>>)

    +if(((1L<<i)&l)!=0)
    +    System.out.print("1");
    +
    +if(((1L << i)&l)!=0)
    +    System.out.print("1");
    +

  • +Braces + + + + +

    Example 4.26. Braces

    +Object[] items = {"2", "3", "4"};
    +
    +Object[] items = { "2", "3", "4" };
    +

  • +Brackets + + + +

    Example 4.27. Brackets

    +for (i = 0; i < 100; i++)
    +    sum += value[i];
    +
    +for(i = 0; i < 100; i++)
    +    sum += value[ i ];
    +

  • +Parentheses + + + +

    Example 4.28. Parentheses

    +GridBagLayout layout = new GridBagLayout();
    +setLayout(layout);
    +
    +GridBagLayout layout = new GridBagLayout();
    +setLayout( layout );
    +

  • +Type Cast Parentheses +

    Example 4.29. Type Cast Parentheses

    +int line = ((JavaAST)node).getStartLine();
    +
    +int line = (( JavaAST )node).getStartLine();
    +

to top

\ No newline at end of file diff --git a/utils/jalopy/docs/wrapping.html b/utils/jalopy/docs/wrapping.html new file mode 100755 index 0000000..54a037d --- /dev/null +++ b/utils/jalopy/docs/wrapping.html @@ -0,0 +1,586 @@ + + + + + 4.3.4. Wrapping + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact
Features | + History | + Manual | + FAQ | + Javadoc
+ This page generated: June 8 2004

4.3.4. Wrapping

+Controls when and how lines gets wrapped. +

4.3.4.1. General

+Lets you control the general line wrapping options. +

4.3.4.1.1. General

+Lets you control the general line wrapping options. +

  • +Wrap lines +

    +Enables or disables the automatic line wrapping. +

  • +Line length +

    +Lets you specify the maximum line length. Jalopy tries (more or less) to limit +each line within the given length. +

  • +Deep indent +

    +Specifies the length after which a gap will be identified as "deep indented". +Jalopy tries to avoid these kind of gaps and will force a line break or apply +another indentation scheme, if this size is exceeded. +

    Example 4.65. Deep indent size (60) not exceeded

    +                                                            |                  |
    +    protected static synchronized File getANewDestinationFile(File dest,       |
    +                                                            | String packageName,
    +                                                            | String filename) |
    +|----------------- the gap ---------------------------|throws IOException      |
    +    {                                                       |                  |
    +    }                                                       |                  |
    +                                                            |                  |
    +                                                            60                 79
    +

    Example 4.66. Deep indent size (50) exeeded

    +                                                  |                            |
    +    protected static synchronized File getANewDestinationFile(File dest,       |
    +                                                  |           String packageName,
    +                                                  |           String filename) |
    +|----------------- the gap ---------------------------|throws IOException      |
    +    {                                             |                            |
    +    }                                             |                            |
    +                                                  |                            |
    +                                                  50                           79
    +
4.3.4.1.2. Policy

+Lets you fine-control the wrapping behaviour. +

  • +Wrap after left parenthesis +

    +Lets you control the wrapping behaviour for statement and expression lists. +

    +If left disabled, the first line break will be preferably inserted +behind the first parameter or expression and only occurs after the left +parenthesis if the maximum line length would be exceeded.

    Example 4.67. Wrap after left parenthesis (disabled)

    +                                                                               |
    +appServerReferencesVector.add(new AppServerReference(
    +        "RemoteApplicationManager",                                            |
    +        poa.create_reference_with_id(         |
    +            "RemoteApplicationManager".getBytes(),                             |
    +            RemoteApplicationManagerHelper.id())));                            |
    +                                                                               |
    +

    +Otherwise the line break will always occur behind the left parenthesis. +

    Example 4.68. Wrap after left parenthesis (enabled)

    +appServerReferencesVector.add(
    +    new AppServerReference(
    +        "RemoteApplicationManager",
    +        poa.create_reference_with_id(
    +            "RemoteApplicationManager".getBytes(),
    +            RemoteApplicationManagerHelper.id())));
    +

    +This switch affects the output style of method/constructor declarations and +calls, creator statements and if-else, for, +while and do-while blocks. +

    +As per default, the wrapped lines will be indended using +Standard indentation, but you +may want to apply another indentation scheme. See +Section 4.3.3.1.1, “Policy” for more information. +

  • +Wrap before right parenthesis +

    +Forces a line break before the right parenthesis of parameter or expression lists. +The parenthesis will be intended according to the current indentation level. +Only takes action if at least one parameter/expression was indeed wrapped. +

    +This switch affects the output style of method/constructor declarations and +calls, creator statements and if-else, for, +while and do-while blocks. +

    Example 4.69. Right parenthesis (disabled)

    +public void severalParameters(String one,
    +                              int two,
    +                              String three,
    +                              StringObject four,
    +                              AnotherObject five) {
    +}
    +

    Example 4.70. Right parenthesis (enabled)

    +public void severalParameters(String one,
    +                              int two,
    +                              String three,
    +                              StringObject four,
    +                              AnotherObject five
    +) {
    +}
    +

    +Both switches combined, looks like the following example: +

    Example 4.71. Left and right parenthesis

    +appServerReferencesVector.add(
    +    new AppServerReference(
    +        "RemoteApplicationManager",
    +        poa.create_reference_with_id(
    +            "RemoteApplicationManager".getBytes(),
    +            RemoteApplicationManagerHelper.id()
    +        )
    +    )
    +);
    +

    +For blocks the output may go like this: +

    Example 4.72. Left and right parenthesis (wrapped)

    +if (
    +    "pick".equals(m.getName()) && m.isStatic() && m.isPublic()
    +) {
    +    pickFound = true;
    +}
    +else if (
    +    "pick".equals(m.getName()) && m.isStatic() && m.isPublic()
    +) {
    +    pickFound = true;
    +}
    +

  • +Wrap grouping parentheses +

    +Lets you control the wrapping behaviour for grouping parentheses. If enabled, +linebreaks are inserted after left and before right parentheses of grouped +expressions to let the expression(s) stand out. +

    Example 4.73. Grouping parentheses (standard indented)

    +if (
    +    !((bankverbindung instanceof ObjectValue)
    +    || (bankverbindung instanceof PrimitiveValue))
    +) {
    +    throw new RuntimeException();
    +}
    +

    Example 4.74. Wrapped grouping parentheses (standard indented)

    +if (
    +    !(
    +        (bankverbindung instanceof ObjectValue)
    +        || (bankverbindung instanceof TkPrimitiveValue)
    +    )
    +) {
    +    throw new RuntimeException();
    +}
    +

  • +Wrap after assignments +

    +Lets you control the way wrapping takes action for assignments. If left disabled, +line wrapping preferably occurs as part of the expression printing. Otherwise +wrapping will be performed right after the assignment. +

    Example 4.75. Don't wrap after assignment

    +this.interessentenNr = new InteressentenNr(
    +        Fachschluesselerzeugung.createService()
    +        .getNeuerFachschluessel(
    +            FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT
    +        )
    +    );
    +

    Example 4.76. Wrap after assignment

    +this.interessentenNr =
    +    new InteressentenNr(
    +        Fachschluesselerzeugung.createService()
    +        .getNeuerFachschluessel(
    +            FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT
    +        )
    +    );
    +

+Line wrapping will often occur with statements that consist of several (possibly long) +expressions. Here you specify whether line wrapping should occur +before or after the expression operator. +

  • +Wrap before operators +

    +If enabled, lines will be wrapped before the operator. The operator will be +printed with the continuation line. +

    Example 4.77. Wrap before operators

    +if ((condition1 && condition2)
    +    || (condition3 && condition4)
    +    || !(condition5 && condition6))
    +{
    +    doSomethingAboutIt();
    +}
    +

  • +Wrap after operators +

    +If enabled, lines will be wrapped after the operator. +

    Example 4.78. Wrap after operators

    +if ((condition1 && condition2) ||
    +    (condition3 && condition4) ||
    +    !(condition5 && condition6))
    +{
    +    doSomethingAboutIt();
    +}
    +

    +If you happen to use Sun Brace styling, you might want to enable +continuation indentation +to let the statement body stand out. +

4.3.4.2. Always

+Lets you choose the statements/expressions that are to be wrapped always. +

4.3.4.2.1. Wrap always

+For certain cases, the need may arise to force line wrapping to achieve a +consistent, uniform look. If you enable any of the following switches, line wrapping +will occur for the specified cases no matter whether you have enabled general +line wrapping or not. +

  • +Before extends keyword +

    +Forces a line break before the extends keyword of a class/interface declaration. +

    Example 4.79. Class/Interface extends keyword

    +public interface Channel extends Puttable, Takable
    +{
    +    ...
    +}
    +

    Example 4.80. Class/Interface extends keyword (wrapped)

    +public interface Channel
    +    extends Puttable, Takable
    +{
    +    ...
    +}
    +

    +You can control the space printed before the keyword with the +Extends Indent setting. +If you leave the switch disabled, the clause will be printed with +standard indentation. +

  • +After extends types +

    +Forces a line wrap after each type name of the extended classes. +

    Example 4.81. Class/Interface extends types

    +public interface Channel extends Puttable, Takable
    +{
    +    ...
    +}
    +

    Example 4.82. Class/Interface extends types (wrapped)

    +public interface Channel extends Puttable,
    +                                 Takable
    +{
    +    ...
    +}
    +

  • +Before implements keyword +

    +Forces a line break before the implements keyword of a class declaration. +

    Example 4.83. implements keyword

    +public class SynchronizedBoolean implements Comparable, Cloneable
    +{
    +    ...
    +}
    +

    Example 4.84. implements keyword (wrapped)

    +public class SynchronizedBoolean
    +    implements Comparable, Cloneable
    +{
    +    ...
    +}
    +

    +You can control the space printed before the keyword with the +Implements Indent setting. +If you leave the switch disabled, the clause will be printed with +standard indentation. +

  • +After implements types +

    +Forces a line wrap after each type name of the implemented classes. +

    Example 4.85. Class implements types

    +public class SynchronizedBoolean implements Comparable, Cloneable
    +{
    +    ...
    +}
    +

    Example 4.86. Class implements types (wrapped)

    +public class SynchronizedBoolean implements Comparable,
    +                                            Cloneable
    +{
    +    ...
    +}
    +

  • +Before throws keyword +

    +Forces a line break before the throws keyword of a method/constructor declaration. +

    Example 4.87. throws keyword

    +private File getDestinationFile(File dest, String packageName,
    +                                String filename) throws IOException
    +{
    +    ...
    +}
    +

    Example 4.88. throws keyword (wrapped)

    +private File getDestinationFile(File dest, String packageName,
    +                                String filename)
    +                         throws IOException
    +{
    +    ...
    +}
    +

    +You can control the space printed before the keyword with the +Throws Indent setting. If you +leave the switch disabled, Jalopy tries to align the throws clause with the +method/constructor parameters as with the above example. If no alignment is +possible, the clause will be printed with +standard indentation. +

  • +After throws types +

    +Forces a line wrap after each type name of the throws clause of a method/constructor declaration. +

    Example 4.89. throws types

    +private File getDestinationFile(File dest, String packageName,
    +                                String filename)
    +                         throws IOException, FooException
    +{
    +    ...
    +}
    +

    Example 4.90. throws types (wrapped)

    +private File getDestinationFile(File dest, String packageName,
    +                                String filename)
    +                         throws IOException,
    +                                FooException
    +{
    +    ...
    +}
    +

    Example 4.91. throws types (standard indented)

    +private static final File getDestinationFile(File dest, String packageName,
    +                                             String filename)
    +    throws IOException,
    +          FooException
    +{
    +    ...
    +}
    +

  • +Method Def parameters +

    +Forces a line wrap after each parameter of a method or constructor declaration. +

    Example 4.92. Method declaration parameters

    +public static File create(File file, File directory, int backupLevel)
    +                   throws IOException
    +{
    +    ...
    +}
    +

    Example 4.93. Method declaration parameters (wrapped)

    +public static File create(File file,
    +                          File directory,
    +                          int backupLevel)
    +                   throws IOException
    +{
    +    ...
    +}
    +
  • +Method Call chains +

    +Forces a line wrap after each chained method call. +

    Example 4.94. Chained Method Call

    +message.format(ERROR_SOURCE_ADDRESS).param (m_session.getAimName()).send();
    +

    Example 4.95. Chained Method Call (wrapped)

    +message.format(ERROR_SOURCE_ADDRESS)
    +       .param (m_session.getAimName())
    +       .send();
    +

  • +Method Call parameters +

    +Forces a line wrap after each parameter of a method call. +

    Example 4.96. Method call

    +doSomething();
    +_userDatabase.addUser("Name", encryptPassword("password", _secretKey),
    +                      "123 fake address");
    +doSomethingElse();
    +

    Example 4.97. Method call (wrapped)

    +doSomething();
    +_userDatabase.addUser("Name",
    +                      encryptPassword("password",
    +                                      _secretKey),
    +                      "123 fake address");
    +doSomethingElse();
    +

  • +Method Call parameters if nested +

    +Forces a line wrap after each parameter of a method call if at least one +parameter is a method call itself. This option can prove especially useful if +one prefers to nest method calls as parameters rather than adding local +variables just to hold those parameters. +

    Example 4.98. Method call if nested (wrapped)

    +doSomething();
    +_userDatabase.addUser("Name",
    +                      encryptPassword("password", _secretKey),
    +                      "123 fake address");
    +doSomethingElse();
    +

  • +Ternary expression question mark (?) +

    +Forces a line wrap after the first operand. +

    Example 4.99. Ternary expression question mark (deep indented)

    +String comma = spaceAfterComma
    +               ? COMMA_SPACE : COMMA;
    +

    +Indentation for consecutive lines depends on the used indenatation policy. +You may further want to use continuation indentation. +

  • +Ternary expression colon (:) +

    +Forces a line wrap after the second operand. +

    Example 4.100. Ternary expression colon

    +String comma = spaceAfterComma ? COMMA_SPACE
    +                               : COMMA;
    +

    +If both switches are disabled, ternary expressions are printed in one line (if everything fits in one line, that is). +

    Example 4.101. Ternary expressions

    +String comma = spaceAfterComma ? COMMA_SPACE : COMMA;
    +

    +If both switches are enabled, you can force a style like the following: +

    Example 4.102. Ternary expressions (continued)

    +String comma = spaceAfterComma
    +    ? COMMA_SPACE
    +    : COMMA;
    +

  • +Labels +

    +Forces a line wrap after labels. +

    Example 4.103. Label

    +// advance to the first CLASS_DEF or INTERFACE_DEF
    +LOOP:   for (AST child = tree.getFirstChild();
    +             child != null;
    +             child = child.getNextSibling())
    +        {
    +            switch (child.getType())
    +            {
    +                case JavaTokenTypes.CLASS_DEF :
    +                case JavaTokenTypes.INTERFACE_DEF :
    +                    next = child;
    +                    break LOOP;
    +
    +                default :
    +                    break;
    +            }
    +        }
    +

    Example 4.104. Label (wrapped)

    +// advance to the first CLASS_DEF or INTERFACE_DEF
    +LOOP:
    +        for (AST child = tree.getFirstChild();
    +             child != null;
    +             child = child.getNextSibling())
    +        {
    +            switch (child.getType())
    +            {
    +                case JavaTokenTypes.CLASS_DEF :
    +                case JavaTokenTypes.INTERFACE_DEF :
    +                    next = child;
    +                    break LOOP;
    +
    +                default :
    +                    break;
    +            }
    +        }
    +

4.3.4.2.2. Wrap always when exceed

+Lets you force wrapping for all parameter or expressions if +the parameter or expression list would otherwise exceed the maximal line length. +If you enable any of the following switches, line wrapping +may occur for the specified cases no matter whether you have enabled general +line wrapping or not. +

  • +After extends types +

    +Forces a line wrap after each type name of the extends clause of a +class/interface declaration if the whole clause does not fit in one line. +

    Example 4.105. Extends types wrapped as needed (standard indented)

    +public interface VeryImportantInterface                        |
    +    extends LeastImportantInterface, LessImportantInterface,   |
    +        ImportantInterface                                     |
    +}                                                              |
    +    ...                                                        |
    +}                                                              |
    +

    Example 4.106. Extends types wrapping forced (standard indented)

    +public interface VeryImportantInterface                        |
    +    extends LeastImportantInterface,                           |
    +        LessImportantInterface,                                |
    +        ImportantInterface                                     |
    +}                                                              |
    +    ...                                                        |
    +}                                                              |
    +
  • +After implements types +

    +Forces a line wrap after each type name of the implements clause of a +class/interface declaration if the whole clause does not fit in one line. +

    Example 4.107. Implements types wrapped as needed (standard indented)

    +public class ImportantClass                                    |
    +    implements ImportantInterface, Serializable, Comparable,   |
    +        Cloneable                                              |
    +}                                                              |
    +    ...                                                        |
    +}                                                              |
    +

    Example 4.108. Implements types wrapping forced (standard indented)

    +public class ImportantClass                                    |
    +    implements ImportantInterface,                             |
    +        Serializable,                                          |
    +        Comparable,                                            |
    +        Cloneable                                              |
    +}                                                              |
    +    ...                                                        |
    +}                                                              |
    +
  • +After throws types +

    +Forces a line wrap after each type name of the throws clause of a +method/constructor declaration if the whole clause does not fit in one line. +

    Example 4.109. Throws types wrapped as needed (deep indented)

    +private File getDestinationFile(File dest, String packageName, |
    +                                String filename)               |
    +                         throws IOException, FooException,     |
    +                                FooBarException                |
    +{                                                              |
    +    ...                                                        |
    +}                                                              |
    +

    Example 4.110. Throws types wrapping forced (deep indented)

    +private File getDestinationFile(File dest, String packageName, |
    +                                String filename)               |
    +                         throws IOException,                   |
    +                                FooException,                  |
    +                                FooBarException                |
    +{                                                              |
    +    ...                                                        |
    +}                                                              |
    +
  • +After parameters/expressions +

    +If enabled, this switch will cause all parameters/expressions to be +wrapped, if and only if the first parameter/expression of the list has been +wrapped. +

    Example 4.111. Expression list (all wrapped)

    +if (
    +    "pick".equals(m.getName()) &&
    +    m.isStatic() &&
    +    m.isPublic()
    +) {
    +    pickFound = true;
    +}
    +else if (
    +    "pick".equals(m.getName()) &&
    +    m.isStatic() &&
    +    m.isPublic()
    +) {
    +    pickFound = true;
    +}
    +

4.3.4.3. Misc

Lets you control miscellaneous wrapping settings.

4.3.4.3.1. Arrays

Contains options to control the wrapping for arrays.

  • Wrap as needed

    Enabling this options means array elements will be wrapped so that they +will be limited within the current line length setting.

    Example 4.112. Wrap as needed

    +String[] constraints = {                                               |
    +    "patternPanel.top=form.top", "patternPanel.hcenter=form.hcenter",  |
    +    "okButton.top=patternPanel.bottom+20",                             |
    +    "okButton.right=form.hcenter-10", "cancelButton.vcenter=10",       |
    +    "cancelButton.left=10"                                             |
    +};                                                                     |
    +

  • Wrap after element

    Forces a newline after every n-th element.

    Example 4.113. Wrap after element 1

    +String[] constraints = {                                               |
    +    "patternPanel.top=form.top",                                       |
    +    "patternPanel.hcenter=form.hcenter",                               |
    +    "okButton.top=patternPanel.bottom+20",                             |
    +    "okButton.right=form.hcenter-10",                                  |
    +    "cancelButton.vcenter=10",                                         |
    +    "cancelButton.left=10"                                             |
    +};                                                                     |
    +

    Example 4.114. Wrap after element 2

    +String[] constraints = {                                               |
    +    "patternPanel.top=form.top", "patternPanel.hcenter=form.hcenter",
    +    "okButton.top=patternPanel.bottom+20", "okButton.right=form.hcenter-10",
    +    "cancelButton.vcenter=10", "cancelButton.left=10"                  |
    +};                                                                     |
    +

    +If both options are left disabled, the array elements will be printed in one +line, right after the left curly brace. +

to top

\ No newline at end of file diff --git a/utils/jalopy/lib/aelfred-1.2.jar b/utils/jalopy/lib/aelfred-1.2.jar new file mode 100755 index 0000000..9bfe9ea Binary files /dev/null and b/utils/jalopy/lib/aelfred-1.2.jar differ diff --git a/utils/jalopy/lib/jalopy-1.0b11.jar b/utils/jalopy/lib/jalopy-1.0b11.jar new file mode 100755 index 0000000..8cc2517 Binary files /dev/null and b/utils/jalopy/lib/jalopy-1.0b11.jar differ diff --git a/utils/jalopy/lib/jalopy-ant-0.6.2.jar b/utils/jalopy/lib/jalopy-ant-0.6.2.jar new file mode 100755 index 0000000..f5e72cd Binary files /dev/null and b/utils/jalopy/lib/jalopy-ant-0.6.2.jar differ diff --git a/utils/jalopy/lib/jaxp-1.2.jar b/utils/jalopy/lib/jaxp-1.2.jar new file mode 100755 index 0000000..22f2905 Binary files /dev/null and b/utils/jalopy/lib/jaxp-1.2.jar differ diff --git a/utils/jalopy/lib/jdom-1.0b8.jar b/utils/jalopy/lib/jdom-1.0b8.jar new file mode 100755 index 0000000..2734fd2 Binary files /dev/null and b/utils/jalopy/lib/jdom-1.0b8.jar differ diff --git a/utils/jalopy/lib/log4j-1.2.6.jar b/utils/jalopy/lib/log4j-1.2.6.jar new file mode 100755 index 0000000..be4a917 Binary files /dev/null and b/utils/jalopy/lib/log4j-1.2.6.jar differ diff --git a/utils/jalopy/lib/oro-2.0.6.jar b/utils/jalopy/lib/oro-2.0.6.jar new file mode 100755 index 0000000..62df73e Binary files /dev/null and b/utils/jalopy/lib/oro-2.0.6.jar differ diff --git a/utils/jalopy/lib/sax-2.0.1.jar b/utils/jalopy/lib/sax-2.0.1.jar new file mode 100755 index 0000000..7ed3b35 Binary files /dev/null and b/utils/jalopy/lib/sax-2.0.1.jar differ diff --git a/utils/jalopy/readme.html b/utils/jalopy/readme.html new file mode 100755 index 0000000..45008c9 --- /dev/null +++ b/utils/jalopy/readme.html @@ -0,0 +1,53 @@ + + +
Overview • + Download • + Documentation • + Plug-ins • + Links • + Contact

README Ant Task

+This is the README for the Ant Task distribution of the Jalopy Java +Source Code Formatter. This Plug-in provides the integration with the +wonderful Jakarta build tool. +

1. Distribution libraries

+This distribution contains the following libraries: +

  • + AElfred XML Parser (aelfred-1.2.jar) +
  • + A modified and re-packaged ANTLR Parser Generator runtime 2.7.2a2 (bundled with the Jalopy runtime) +
  • + Jalopy Java Source Code Formatter runtime (jalopy-1.0b11.jar) +
  • + Jalopy Ant Task (jalopy-ant-0.6.2.jar) +
  • JAXP Java API for XML Processing (jaxp-1.2.jar) +
  • JDOM XML API (jdom-1.0b8.jar) +
  • log4j logging toolkit (log4j-1.2.6.jar) +
  • Oro Regular expressions (oro-2.0.6.jar) +
  • SAX Simple API for XML (sax-2.0.1.jar) +

2. Latest version

+Details of the latest version can be found on the Jalopy project +web site at SourceForge, see +http://jalopy.sf.net. +

3. Installation

+For installation instructions, see +/docs/plugin-ant.html. +

4. Custom build

+For build instructions, see +/docs/build.html. +

5. Change history

+To learn about implementation changes, fixed bugs and new features of this +version, see /docs/history.html. +

6. Licensing

+This Plug-in is licensed under a +BSD License. For +additional license terms of the used 3rd-party libraries, please refer to +Appendix A. +

7. Contact

+For ways to contact the author or submit bug, feature or support requests, see +/docs/contact.html. +

8. Contributors

+For a list of project contributors, see +/docs/contributors.html. +

to top

\ No newline at end of file