From fd1db02bdc9fbd2a5beca0cc2b214c1adbcc1a7a Mon Sep 17 00:00:00 2001 From: clemenso Date: Mon, 15 Sep 2008 18:01:32 +0000 Subject: encoding git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@39 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- .../main/java/at/gv/egiz/bku/binding/IdImpl.java | 129 +++++++++++---------- 1 file changed, 66 insertions(+), 63 deletions(-) (limited to 'bkucommon/src/main/java/at/gv/egiz/bku/binding/IdImpl.java') diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/binding/IdImpl.java b/bkucommon/src/main/java/at/gv/egiz/bku/binding/IdImpl.java index 5523992a..c8a76823 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/binding/IdImpl.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/binding/IdImpl.java @@ -14,67 +14,70 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package at.gv.egiz.bku.binding; - -import iaik.utils.Base64OutputStream; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.security.SecureRandom; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * Implementation that uses a Base64 representation for self generated Ids. - * @author wbauer - * - */ -public class IdImpl implements at.gv.egiz.bku.binding.Id { - private static Log log = LogFactory.getLog(IdImpl.class); - - private String idString; - - public IdImpl(int bitNumber, SecureRandom random) { - int byteSize = bitNumber/8; - if (bitNumber % 8 != 0) { - byteSize++; - } - byte[] randomBytes = new byte[byteSize]; - random.nextBytes(randomBytes); - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - Base64OutputStream b64 = new Base64OutputStream(baos); - try { - b64.write(randomBytes); - b64.flush(); - b64.close(); - idString = new String(baos.toByteArray()); - } catch (IOException e) { - log.error("Cannot create secure id: "+e); - } - } - - public IdImpl(String idString) { - if (idString == null) { - throw new NullPointerException("Provided idstring must not be null"); - } - this.idString = idString; - } - - public String toString() { - return idString; - } - - public int hashCode() { - return idString.hashCode(); - } - - public boolean equals(Object other) { - if (other instanceof Id) { - Id otherId = (Id)other; - return otherId.toString().equals(idString); - } else { - return false; - } - } +package at.gv.egiz.bku.binding; + +import iaik.utils.Base64OutputStream; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.security.SecureRandom; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Implementation that uses a Base64 representation for self generated Ids. + * @author wbauer + * + */ +public class IdImpl implements at.gv.egiz.bku.binding.Id { + private static Log log = LogFactory.getLog(IdImpl.class); + + private String idString; + + public IdImpl(int bitNumber, SecureRandom random) { + int byteSize = bitNumber/8; + if (bitNumber % 8 != 0) { + byteSize++; + } + byte[] randomBytes = new byte[byteSize]; + random.nextBytes(randomBytes); + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + Base64OutputStream b64 = new Base64OutputStream(baos); + try { + b64.write(randomBytes); + b64.flush(); + b64.close(); + idString = new String(baos.toByteArray()); + } catch (IOException e) { + log.error("Cannot create secure id: "+e); + } + } + + public IdImpl(String idString) { + if (idString == null) { + throw new NullPointerException("Provided idstring must not be null"); + } + this.idString = idString; + } + + @Override + public String toString() { + return idString; + } + + @Override + public int hashCode() { + return idString.hashCode(); + } + + @Override + public boolean equals(Object other) { + if (other instanceof Id) { + Id otherId = (Id)other; + return otherId.toString().equals(idString); + } else { + return false; + } + } } \ No newline at end of file -- cgit v1.2.3