Skip to content

obattalov/jrivets-common

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JRivets

"Rivets and fasteners for java artisans"

What is it?

This is java library with a number of different java classes that were developed for some project and had been found suitable to be reused in another one.

What are the classes inside?

Ok. Inside are classes that make the life a little bit easy. For example, if you use Log4j you write sometimes a code like this:

    logger.debug("I got " + apples.size() + " and put them to the store " + appleStore);

you can find that this is quite not good idea to concatenate strings if the debug log level is turned off, so you re-write code as follows:

    ...
    if (logger.isDebugEnabled()) {
        logger.debug("I got " + apples.size() + " and put them to the store " + appleStore);
    }
    ...

and then your code becomes to look like this:

    ...
    appleStore.put(apples);
    if (logger.isDebugEnabled()) {
        logger.debug("I got " + apples.size() + " and put them to the store " + appleStore);
    }
    if (apples.contains(redApple)) {
        if (logger.isTraceEnabled()) {
            logger.trace("Some apples are red: " + apples.getRedApples());
        }
        ...
    }
    ...

which looks ugly because it is littered by massive log constructions. I know, it is not a big deal, but there is a solution, what if we could write log messages like this:

    appleStore.put(apples);
    logger.debug("I got ", apples.size(), " and put them to the store ", appleStore);
    
    if (apples.contains(redApple)) {
        logger.trace("Some apples are red: ", apples.getRedApples());
        ...
    }

The logger in code above can fix both problems - it concatenates strings only when the result is going to be used (be printed to a log), and remove 'if{ }' garbage as much as possible.

So, JRivets contains the logger and even more...

About

Rivets and fasteners for java artisans

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%