-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Archimedes Trajano
committed
May 30, 2011
0 parents
commit 0e1d6a5
Showing
15 changed files
with
603 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<classpath> | ||
<classpathentry kind="src" output="target/classes" path="src/main/java"/> | ||
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"/> | ||
<classpathentry kind="src" output="target/test-classes" path="src/test/java"/> | ||
<classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources"/> | ||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> | ||
<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/> | ||
<classpathentry kind="output" path="target/classes"/> | ||
</classpath> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
target/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<projectDescription> | ||
<name>commons</name> | ||
<comment></comment> | ||
<projects> | ||
</projects> | ||
<buildSpec> | ||
<buildCommand> | ||
<name>org.eclipse.jdt.core.javabuilder</name> | ||
<arguments> | ||
</arguments> | ||
</buildCommand> | ||
<buildCommand> | ||
<name>org.maven.ide.eclipse.maven2Builder</name> | ||
<arguments> | ||
</arguments> | ||
</buildCommand> | ||
</buildSpec> | ||
<natures> | ||
<nature>org.eclipse.jdt.core.javanature</nature> | ||
<nature>org.maven.ide.eclipse.maven2Nature</nature> | ||
</natures> | ||
</projectDescription> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
#Sat May 28 16:31:22 EDT 2011 | ||
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning | ||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 | ||
eclipse.preferences.version=1 | ||
org.eclipse.jdt.core.compiler.source=1.7 | ||
org.eclipse.jdt.core.compiler.compliance=1.7 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
#Sat May 28 17:03:21 EDT 2011 | ||
sp_cleanup.add_missing_override_annotations=true | ||
sp_cleanup.convert_to_enhanced_for_loop=true | ||
sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true | ||
sp_cleanup.remove_unnecessary_nls_tags=true | ||
editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true | ||
sp_cleanup.make_variable_declarations_final=true | ||
sp_cleanup.add_generated_serial_version_id=false | ||
sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true | ||
sp_cleanup.remove_trailing_whitespaces_ignore_empty=false | ||
sp_cleanup.always_use_this_for_non_static_method_access=false | ||
sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true | ||
sp_cleanup.remove_unused_private_methods=true | ||
sp_cleanup.sort_members=true | ||
sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true | ||
sp_cleanup.remove_trailing_whitespaces=true | ||
sp_cleanup.make_parameters_final=true | ||
sp_cleanup.remove_unused_private_members=false | ||
sp_cleanup.make_private_fields_final=true | ||
sp_cleanup.remove_unused_imports=true | ||
sp_cleanup.always_use_parentheses_in_expressions=false | ||
sp_cleanup.make_local_variable_final=true | ||
sp_cleanup.remove_unnecessary_casts=true | ||
sp_cleanup.use_this_for_non_static_method_access=true | ||
sp_cleanup.qualify_static_method_accesses_with_declaring_class=false | ||
sp_cleanup.remove_private_constructors=true | ||
sp_cleanup.remove_trailing_whitespaces_all=true | ||
sp_cleanup.add_missing_deprecated_annotations=true | ||
sp_cleanup.add_missing_annotations=true | ||
sp_cleanup.never_use_parentheses_in_expressions=true | ||
sp_cleanup.organize_imports=true | ||
sp_cleanup.format_source_code_changes_only=false | ||
sp_cleanup.always_use_blocks=true | ||
sp_cleanup.use_blocks=true | ||
sp_cleanup.use_this_for_non_static_field_access=true | ||
sp_cleanup.never_use_blocks=false | ||
sp_cleanup.use_blocks_only_for_return_and_throw=false | ||
sp_cleanup.remove_unused_private_types=true | ||
sp_cleanup.sort_members_all=true | ||
sp_cleanup.add_missing_nls_tags=false | ||
sp_cleanup.always_use_this_for_non_static_field_access=false | ||
eclipse.preferences.version=1 | ||
sp_cleanup.add_missing_methods=false | ||
sp_cleanup.make_type_abstract_if_missing_method=false | ||
sp_cleanup.format_source_code=true | ||
sp_cleanup.use_parentheses_in_expressions=true | ||
sp_cleanup.on_save_use_additional_actions=true | ||
sp_cleanup.add_default_serial_version_id=true | ||
sp_cleanup.remove_unused_local_variables=false | ||
sp_cleanup.qualify_static_field_accesses_with_declaring_class=false | ||
sp_cleanup.correct_indentation=true | ||
sp_cleanup.remove_unused_private_fields=true | ||
sp_cleanup.qualify_static_member_accesses_with_declaring_class=true | ||
sp_cleanup.add_serial_version_id=false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
#Sat May 28 16:26:54 EDT 2011 | ||
version=1 | ||
resolveWorkspaceProjects=true | ||
activeProfiles= | ||
eclipse.preferences.version=1 | ||
fullBuildGoals=process-test-resources | ||
resourceFilterGoals=process-resources resources\:testResources | ||
includeModules=false | ||
skipCompilerPlugin=true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||
<modelVersion>4.0.0</modelVersion> | ||
<groupId>net.trajano</groupId> | ||
<artifactId>commons</artifactId> | ||
<version>0.0.1-SNAPSHOT</version> | ||
<name>Commons</name> | ||
<description>This class provides common utility classes similar to that of Apache Commons, but with the focus on JDK7</description> | ||
<build> | ||
<plugins> | ||
<plugin> | ||
<groupId>org.apache.maven.plugins</groupId> | ||
<artifactId>maven-compiler-plugin</artifactId> | ||
<version>2.3.2</version> | ||
<configuration> | ||
<source>1.7</source> | ||
<target>1.7</target> | ||
</configuration> | ||
</plugin> | ||
</plugins> | ||
</build> | ||
<dependencies> | ||
<dependency> | ||
<groupId>junit</groupId> | ||
<artifactId>junit</artifactId> | ||
<version>4.8.2</version> | ||
<type>jar</type> | ||
<scope>test</scope> | ||
</dependency> | ||
</dependencies> | ||
</project> |
22 changes: 22 additions & 0 deletions
22
src/main/java/net/trajano/commons/filevisitor/RemoveEmptyFoldersVisitor.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
package net.trajano.commons.filevisitor; | ||
|
||
import java.io.IOException; | ||
import java.nio.file.DirectoryStream; | ||
import java.nio.file.FileVisitResult; | ||
import java.nio.file.Files; | ||
import java.nio.file.Path; | ||
import java.nio.file.SimpleFileVisitor; | ||
|
||
public class RemoveEmptyFoldersVisitor extends SimpleFileVisitor<Path> { | ||
@Override | ||
public FileVisitResult postVisitDirectory(Path dir, IOException exc) | ||
throws IOException { | ||
DirectoryStream<Path> ds = Files.newDirectoryStream(dir); | ||
boolean hasFiles = ds.iterator().hasNext(); | ||
ds.close(); | ||
if (!hasFiles) { | ||
Files.delete(dir); | ||
} | ||
return FileVisitResult.CONTINUE; | ||
} | ||
} |
26 changes: 26 additions & 0 deletions
26
src/main/java/net/trajano/commons/filevisitor/RemoveFoldersVisitor.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
package net.trajano.commons.filevisitor; | ||
|
||
import java.io.IOException; | ||
import java.nio.file.FileVisitResult; | ||
import java.nio.file.Files; | ||
import java.nio.file.Path; | ||
import java.nio.file.SimpleFileVisitor; | ||
import java.nio.file.attribute.BasicFileAttributes; | ||
|
||
public class RemoveFoldersVisitor extends SimpleFileVisitor<Path> { | ||
Path currentDirectory = null; | ||
|
||
@Override | ||
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) | ||
throws IOException { | ||
Files.delete(file); | ||
return FileVisitResult.CONTINUE; | ||
} | ||
|
||
@Override | ||
public FileVisitResult postVisitDirectory(Path dir, IOException exc) | ||
throws IOException { | ||
Files.delete(dir); | ||
return FileVisitResult.CONTINUE; | ||
} | ||
} |
66 changes: 66 additions & 0 deletions
66
src/main/java/net/trajano/commons/io/DigestInputStream.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
package net.trajano.commons.io; | ||
|
||
import java.io.FilterInputStream; | ||
import java.io.IOException; | ||
import java.io.InputStream; | ||
import java.security.MessageDigest; | ||
import java.security.NoSuchAlgorithmException; | ||
|
||
/** | ||
* This wraps an input stream to provide a digest. | ||
* | ||
* @author trajano | ||
* | ||
*/ | ||
public class DigestInputStream extends FilterInputStream { | ||
/** | ||
* Message digest. | ||
*/ | ||
private final MessageDigest digest; | ||
private byte[] digestValue = null; | ||
|
||
public DigestInputStream(final InputStream in, final String algorithm) | ||
throws NoSuchAlgorithmException { | ||
super(in); | ||
digest = MessageDigest.getInstance(algorithm); | ||
|
||
} | ||
|
||
@Override | ||
public void close() throws IOException { | ||
in.close(); | ||
digestValue = digest.digest(); | ||
} | ||
|
||
/** | ||
* This will return the digest value. This will return <code>null</code> if | ||
* the stream is not closed. | ||
* | ||
* @return | ||
*/ | ||
public byte[] digest() { | ||
return digestValue; | ||
} | ||
|
||
@Override | ||
public int read() throws IOException { | ||
final int c = in.read(); | ||
digest.update((byte) c); | ||
return c; | ||
} | ||
|
||
@Override | ||
public int read(final byte[] b) throws IOException { | ||
final int c = in.read(b); | ||
digest.update(b); | ||
return c; | ||
} | ||
|
||
@Override | ||
public int read(final byte[] b, final int off, final int len) | ||
throws IOException { | ||
final int c = in.read(b, off, len); | ||
digest.update(b, off, len); | ||
return c; | ||
} | ||
} |
62 changes: 62 additions & 0 deletions
62
src/main/java/net/trajano/commons/io/DigestOutputStream.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
package net.trajano.commons.io; | ||
|
||
import java.io.FilterOutputStream; | ||
import java.io.IOException; | ||
import java.io.OutputStream; | ||
import java.security.MessageDigest; | ||
import java.security.NoSuchAlgorithmException; | ||
|
||
/** | ||
* This wraps an input stream to provide a digest. | ||
* | ||
* @author trajano | ||
* | ||
*/ | ||
public class DigestOutputStream extends FilterOutputStream { | ||
/** | ||
* Message digest. | ||
*/ | ||
private final MessageDigest digest; | ||
private byte[] digestValue = null; | ||
|
||
public DigestOutputStream(final OutputStream out, final String algorithm) | ||
throws NoSuchAlgorithmException { | ||
super(out); | ||
digest = MessageDigest.getInstance(algorithm); | ||
} | ||
|
||
@Override | ||
public void close() throws IOException { | ||
out.close(); | ||
digestValue = digest.digest(); | ||
} | ||
|
||
/** | ||
* This will return the digest value. This will return <code>null</code> if | ||
* the stream is not closed. | ||
* | ||
* @return | ||
*/ | ||
public byte[] digest() { | ||
return digestValue; | ||
} | ||
|
||
@Override | ||
public void write(final byte[] b) throws IOException { | ||
digest.update(b); | ||
out.write(b); | ||
} | ||
|
||
@Override | ||
public void write(final byte[] b, final int off, final int len) | ||
throws IOException { | ||
digest.update(b, off, len); | ||
out.write(b, off, len); | ||
} | ||
|
||
@Override | ||
public void write(final int b) throws IOException { | ||
digest.update((byte) b); | ||
out.write(b); | ||
} | ||
} |
Oops, something went wrong.