andyLib

Questa è la pagina ufficiale delle andyLib, una libreria con dei piccoli metodi utili, nato un po' per gioco un po' per sviluppo!! :-D

Spero però di riuscire ad incrementare il tutto con gli ultimi progettini che ho in cantiere (erano tutte scuse per prepararsi all'esame per la certificazione SCJP, ma ora che l'ho passato ho grandi idee). :-)

Ovviamente, come potete ben immaginare leggendo la documentazione, sono metodi di grande semplicità, che sono di supporto più che altro per lo sviluppo di semplici applicazioni "fatte in casa". Pian piano che me ne serviranno altre verranno aggiunte. :-)

Grande novità della versione 0.4 è l'implementazione del mini-progetto "andyLog", un sistema per la registrazione di log, che dalla versione 0.8 si integra con il nuovo progetto "andyConfig", un sistema per la centralizzazione della configurazione e delle opzioni di un programma!! :-D
Il sistema si basa su poche semplici classi e permette di affettuare un logging personalizzato, anche su file, potendo scegliere varie opzioni. Dalla versione 0.7 il progetto è stato ridisegnato quasi completamente, ed ora fa uso anche della Java Reflection. Lo schema UML (eh, si, sto studiacchiando anche questo) è dovrebbe essere il seguente:


clicca per ingrandire

Fino alla versione 0.7 esclusa, all'interno del file dei sorgenti ci sono anche gli script per la compilazione, ripresi direttamente dal progetto andyProject. Ora è presente il file build.xml per la compilazione con ANT.

Download e ChangeLog

In questa sezione è possibile scaricare la libreria sotto forma di file .jar, e i sorgenti come file compresso .zip.Dalla versione 0.7 tutti i pacchetti sono in formato tar.bz2.
Clicca sulle freccie per visualizzare/nascondere il changelog della specifica versione.

versione 0.9.1.1: jar src doc

! bug on automatic creation of nullLogger

versione 0.9.1: jar src doc

! bug on reading params (date was read twice while level was not)
* changed log format: date+level+name
+ level FATAL
- removed deprecated items
- various minor changes

versione 0.9: jar src doc

* used andyProject-0.6
* moved method print(:Inputstream)
+ method to get filename without extension
+ method to get file extension
+ logger NullLogger (which logs nothing)
+ class UtilsProgram to group methods related to the program itself
+ automatic method for version data
! fixed documentation: default logger is indicated by the property "log.defaultLogger"

versione 0.8.1: jar src

! now parameters 'useDate' and 'useLevel' are read correctly

versione 0.8: jar src doc

* usato andyProject-0.5.1
* migliorata documentazione
+ metodo UtilsIO.getUnsignedInt(:byte):int
+ metodi Utils.printHeader() e Utils.printHelp()
+ classe ConfigMgr per centralizzare i parametri:
andyLog:
   * adattamento di andyLog alla classe "ConfigMgr"
   + metodo Logger.getPrefix(:Level) per avere un prefisso direttamente con il livello
   + metodo FileLogger.log(:Exception, :Level) (piĆ¹ efficiente)
   ! deprecati i livelli FINEST e SEVERE
! deprecata classe UtilsXML

versione 0.7.1: jar src doc docfull

! il livello viene ora scritto correttamente

versione 0.7: jar src doc docfull

* migrato il progetto su netbeans
+ metodo Utils.getInitParam(paramName:String, args:String[])
- UtilsIO: rimossi metodi obsoleti cp(:InputStream, :OutputStream, :String) e mv(:File, :File, :String)
* cambiato completamente il pacchetto it.andynaz.log:
  * Config prende tutti i parametri che iniziano con "andyLog." e crea un proprio oggetto properties
  * Config.getConfig() restituisce un oggetto Config condiviso, inizializzato con Config.init(:Properties)
  * ogni logger creato senza configurazione prende dal config condiviso le opzioni che gli servono
    (se non ci sono usa propri valori di default)
  * ogni logger eredita le proprietà del Logger padre
  * scambiati i livelli INFO e DEBUG
  + formato data configurabile
  + classe LoggerMgr per ottenere il logger di default (parametro 'andylog.defaultLogger')
  * prefisso log come [<data><sep>][<nome log><sep>][<codice livello><sep>]
* documentazione in inglese

versione 0.6.1: jar src

+ Utils.concat(:List, sep:String)
* Utils.concat(:String[], sep:String) non lancia più IllegalArgumentException
! messaggi eccezioni in inglese
! UtilsXML.replaceTag corretto messaggio eccezione

versione 0.6: jar src

+ Utils.concat(String, String)
↑ aggiornata la struttura del progetto e gli script di compilazione su andyProject v0.4

versione 0.5: jar src

+ Utils.pad(String, String, int)
+ UtilsIO ha metodi cp e mv senza il paramentro 'errMsg' (questi ultimi sono deprecati)
+ UtilsIO.appendToFile(File file, String content)
! UtilsIO.cp(InputStream in, OutputStream out) non chiude gli stream

versione 0.4: jar src

+ pacchetto it.andynaz.log
+ Utils.parseInt(String)
+ Utils.parseLong(String)
+ UtilsWeb.getIntegerParameter(String)
! revisione generale della documentazione
! UtilsIO.mv(File, File, String) ora si appoggia al metodo UtilsIO.cp(File, File)
! UtilsIO.cp(File, File)
! UtilsXML adattato a UtilsIO

versione 0.3: jar src

+ classe UtilsZIP
+ metodo UtilsXML.replaceTag(String, String, String)
+ metodo UtilsXML.readTag(String, String)
! nascosto il costruttore dalle classi UtilsIO e UtilsXML
↑ aggiornati gli script di compilazione su andyProject v0.2

versione 0.2: jar src

+ classe UtilsIO
+ classe UtilsXML

versione 0.1: jar src

+ classe Utils

Documentazione

In questa pagina è disponibile la documentazione.

Licenza

Tutto il progetto è distribuito sotto la licenza GPLv3 LGPLv3 (dalla versione 0.4); per una versione della licenza leggere qui (una copia del testo è comunque compreso anche insieme ai file sorgenti, nella cartella conf.