javadoc fixes
This commit is contained in:
parent
196295f8ed
commit
6c82e6b1a8
28
pom.xml
28
pom.xml
@ -8,10 +8,24 @@
|
||||
<description>This project implements the javax.crypto API using java.nio instead of java.io.</description>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
|
||||
<maven.compiler.source>1.7</maven.compiler.source>
|
||||
<maven.compiler.target>1.7</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<organization>
|
||||
<name>Inteligr8</name>
|
||||
<url>https://www.inteligr8.com</url>
|
||||
</organization>
|
||||
|
||||
<developers>
|
||||
<developer>
|
||||
<name>Brian Long</name>
|
||||
<email>brian@inteligr8.com</email>
|
||||
<url>https://twitter.com/brianmlong</url>
|
||||
</developer>
|
||||
</developers>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
@ -38,13 +52,23 @@
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<reporting>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>javadoc</id>
|
||||
<phase>package</phase>
|
||||
<goals><goal>jar</goal></goals>
|
||||
<configuration>
|
||||
<show>public</show>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</reporting>
|
||||
</build>
|
||||
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
|
@ -16,7 +16,7 @@ import org.slf4j.LoggerFactory;
|
||||
*
|
||||
* @author brian@inteligr8.com
|
||||
*/
|
||||
public class AbstractCryptoByteChannel implements Channel {
|
||||
abstract class AbstractCryptoByteChannel implements Channel {
|
||||
|
||||
private final Logger logger = LoggerFactory.getLogger(AbstractCryptoByteChannel.class);
|
||||
|
||||
|
@ -25,7 +25,7 @@ import javax.crypto.BadPaddingException;
|
||||
import javax.crypto.IllegalBlockSizeException;
|
||||
import javax.crypto.NoSuchPaddingException;
|
||||
|
||||
public abstract class AbstractCryptoReadableByteChannel extends AbstractCryptoByteChannel implements ReadableByteChannel {
|
||||
abstract class AbstractCryptoReadableByteChannel extends AbstractCryptoByteChannel implements ReadableByteChannel {
|
||||
|
||||
protected final ReadableByteChannel rbchannel;
|
||||
|
||||
|
@ -26,7 +26,7 @@ import javax.crypto.BadPaddingException;
|
||||
import javax.crypto.IllegalBlockSizeException;
|
||||
import javax.crypto.NoSuchPaddingException;
|
||||
|
||||
public abstract class AbstractCryptoWritableByteChannel extends AbstractCryptoByteChannel implements WritableByteChannel, Flushable {
|
||||
abstract class AbstractCryptoWritableByteChannel extends AbstractCryptoByteChannel implements WritableByteChannel, Flushable {
|
||||
|
||||
protected final WritableByteChannel wbchannel;
|
||||
|
||||
|
@ -26,7 +26,7 @@ import org.slf4j.LoggerFactory;
|
||||
*
|
||||
* @author brian@inteligr8.com
|
||||
*/
|
||||
public class AbstractDigestByteChannel implements Channel {
|
||||
abstract class AbstractDigestByteChannel implements Channel {
|
||||
|
||||
private final Logger logger = LoggerFactory.getLogger(AbstractDigestByteChannel.class);
|
||||
|
||||
|
@ -145,8 +145,9 @@ public class CipherBuffer extends AbstractBuffer {
|
||||
/**
|
||||
* An accessor for the optional initialization vector.
|
||||
*
|
||||
* https://en.wikipedia.org/wiki/Initialization_vector
|
||||
*
|
||||
* @return A byte array of the IV with a length of the key or block size; or null
|
||||
* @see https://en.wikipedia.org/wiki/Initialization_vector
|
||||
*/
|
||||
public byte[] getInitializationVector() {
|
||||
return this.cipher.getIV();
|
||||
@ -155,9 +156,10 @@ public class CipherBuffer extends AbstractBuffer {
|
||||
/**
|
||||
* A modifier for the optional initialization vector.
|
||||
*
|
||||
* https://en.wikipedia.org/wiki/Initialization_vector
|
||||
*
|
||||
* @param initializationVector A byte array of the IV with a length of the key or block size; or null to unset
|
||||
* @throws InvalidAlgorithmParameterException The specified algorithm does not support an IV or the specified length is incorrect
|
||||
* @see https://en.wikipedia.org/wiki/Initialization_vector
|
||||
*/
|
||||
public void setInitializationVector(byte[] initializationVector) throws InvalidAlgorithmParameterException {
|
||||
try {
|
||||
|
@ -106,7 +106,7 @@ public class HashingWritableByteChannel extends AbstractDigestByteChannel implem
|
||||
* @param buffer A NIO buffer ready for reading
|
||||
* @return The number of bytes written to the underlying channel; never negative
|
||||
* @throws IOException An I/O or hashing exception occurred
|
||||
* @throws DigestException
|
||||
* @throws DigestException A hashing issue occurred
|
||||
*/
|
||||
protected int _write(ByteBuffer buffer) throws IOException, DigestException {
|
||||
if (!this.isOpen())
|
||||
@ -122,8 +122,7 @@ public class HashingWritableByteChannel extends AbstractDigestByteChannel implem
|
||||
*
|
||||
* @return The number of bytes written to the underlying channel; never negative
|
||||
* @throws IOException An I/O or crypto exception occurred
|
||||
* @throws IllegalBlockSizeException
|
||||
* @throws BadPaddingException
|
||||
* @throws DigestException A hashing issue occurred
|
||||
*/
|
||||
protected int _flush() throws IOException, DigestException {
|
||||
if (!this.isOpen())
|
||||
|
@ -44,7 +44,7 @@ public class IVEncryptingWritableByteChannel implements WritableByteChannel, Flu
|
||||
private boolean wroteIV = false;
|
||||
|
||||
/**
|
||||
* @param rbchannel A readable byte channel
|
||||
* @param wbchannel A writable byte channel
|
||||
* @param key A JCA key
|
||||
* @param transformation A JCE transformation in the pattern 'algorithm/cipher_mode/padding'
|
||||
* @throws NoSuchAlgorithmException The algorithm is not supported by the JCA provider
|
||||
@ -57,19 +57,50 @@ public class IVEncryptingWritableByteChannel implements WritableByteChannel, Flu
|
||||
this.wbchannel = wbchannel;
|
||||
this.ewbchannel = new EncryptingWritableByteChannel(wbchannel, new EncryptingCipherParameters(key, transformation, IVSource.Generated));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param wbchannel A writable byte channel
|
||||
* @param key A JCA key
|
||||
* @param transformation A JCE transformation in the pattern 'algorithm/cipher_mode/padding'
|
||||
* @param iv A byte array of the initialization vector
|
||||
* @throws NoSuchAlgorithmException The algorithm is not supported by the JCA provider
|
||||
* @throws NoSuchPaddingException The padding is not supported by the JCA provider and cipher mode
|
||||
* @throws InvalidKeyException The key is not compatible with the specified transformation
|
||||
* @throws InvalidAlgorithmParameterException The algorithm does not support IV or requires an IV
|
||||
*/
|
||||
public IVEncryptingWritableByteChannel(WritableByteChannel wbchannel, Key key, String transformation, byte[] iv)
|
||||
throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, InvalidAlgorithmParameterException {
|
||||
this.wbchannel = wbchannel;
|
||||
this.ewbchannel = new EncryptingWritableByteChannel(wbchannel, new EncryptingCipherParameters(key, transformation, iv));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param wbchannel A writable byte channel
|
||||
* @param key A JCA key
|
||||
* @param transformation A JCE transformation in the pattern 'algorithm/cipher_mode/padding'
|
||||
* @param provider A JCA provider
|
||||
* @throws NoSuchAlgorithmException The algorithm is not supported by the JCA provider
|
||||
* @throws NoSuchPaddingException The padding is not supported by the JCA provider and cipher mode
|
||||
* @throws InvalidKeyException The key is not compatible with the specified transformation
|
||||
* @throws InvalidAlgorithmParameterException The algorithm does not support IV or requires an IV
|
||||
*/
|
||||
public IVEncryptingWritableByteChannel(WritableByteChannel wbchannel, Key key, String transformation, Provider provider)
|
||||
throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, InvalidAlgorithmParameterException {
|
||||
this.wbchannel = wbchannel;
|
||||
this.ewbchannel = new EncryptingWritableByteChannel(wbchannel, new EncryptingCipherParameters(key, transformation, IVSource.Generated, provider));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param wbchannel A writable byte channel
|
||||
* @param key A JCA key
|
||||
* @param transformation A JCE transformation in the pattern 'algorithm/cipher_mode/padding'
|
||||
* @param iv A byte array of the initialization vector
|
||||
* @param provider A JCA provider
|
||||
* @throws NoSuchAlgorithmException The algorithm is not supported by the JCA provider
|
||||
* @throws NoSuchPaddingException The padding is not supported by the JCA provider and cipher mode
|
||||
* @throws InvalidKeyException The key is not compatible with the specified transformation
|
||||
* @throws InvalidAlgorithmParameterException The algorithm does not support IV or requires an IV
|
||||
*/
|
||||
public IVEncryptingWritableByteChannel(WritableByteChannel wbchannel, Key key, String transformation, byte[] iv, Provider provider)
|
||||
throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, InvalidAlgorithmParameterException {
|
||||
this.wbchannel = wbchannel;
|
||||
@ -129,7 +160,7 @@ public class IVEncryptingWritableByteChannel implements WritableByteChannel, Flu
|
||||
* @see EncryptingWritableByteChannel#write(ByteBuffer)
|
||||
*/
|
||||
@Override
|
||||
public int write(ByteBuffer src) throws IOException {
|
||||
public int write(ByteBuffer buffer) throws IOException {
|
||||
int bytes = 0;
|
||||
if (!this.wroteIV) {
|
||||
ByteBuffer iv = ByteBuffer.wrap(this.ewbchannel.getCipher().getInitializationVector());
|
||||
@ -137,7 +168,7 @@ public class IVEncryptingWritableByteChannel implements WritableByteChannel, Flu
|
||||
this.wroteIV = true;
|
||||
}
|
||||
|
||||
bytes += this.ewbchannel.write(src);
|
||||
bytes += this.ewbchannel.write(buffer);
|
||||
return bytes;
|
||||
}
|
||||
|
||||
|
@ -8,7 +8,7 @@ import java.security.NoSuchAlgorithmException;
|
||||
import javax.crypto.KeyGenerator;
|
||||
import javax.crypto.SecretKey;
|
||||
|
||||
public abstract class AbstractCipherUnitTest {
|
||||
abstract class AbstractCipherUnitTest {
|
||||
|
||||
public abstract String getDefaultAlgorithm();
|
||||
public abstract int getDefaultKeySize();
|
||||
|
@ -10,7 +10,7 @@ import org.apache.commons.codec.binary.Hex;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Test;
|
||||
|
||||
public abstract class AbstractCryptoByteChannelUnitTest {
|
||||
abstract class AbstractCryptoByteChannelUnitTest {
|
||||
|
||||
private final Charset charset = Charset.forName("utf-8");
|
||||
|
||||
|
@ -12,7 +12,7 @@ import org.apache.commons.codec.binary.Hex;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
|
||||
public abstract class AbstractDigestUnitTest {
|
||||
abstract class AbstractDigestUnitTest {
|
||||
|
||||
public abstract String getDefaultAlgorithm();
|
||||
|
||||
|
@ -7,7 +7,7 @@ import java.nio.charset.Charset;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
public abstract class AbstractHashingByteChannelUnitTest {
|
||||
abstract class AbstractHashingByteChannelUnitTest {
|
||||
|
||||
private final Charset charset = Charset.forName("utf-8");
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user