commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sebb (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CODEC-220) Possible more OO-like approach to DigestUtils
Date Wed, 18 May 2016 12:38:13 GMT

    [ https://issues.apache.org/jira/browse/CODEC-220?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15288888#comment-15288888
] 

Sebb commented on CODEC-220:
----------------------------

When combined with the static import of constants, the API looks like this:

import org.apache.commons.codec.digest.MessageDigestAlgorithms.*;
...
byte [] digest1 MessageDigestHelper.with(MD2).digest(new File("pom.xml"));
String algo = "NEW-1";
byte [] digest2 MessageDigestHelper.with(algo).digest(new File("pom.xml"));

This is similar to the enum approach which would look like:

byte [] digest1 MessageDigestEnum.MD2.digest(new File("pom.xml"));

> Possible more OO-like approach to DigestUtils
> ---------------------------------------------
>
>                 Key: CODEC-220
>                 URL: https://issues.apache.org/jira/browse/CODEC-220
>             Project: Commons Codec
>          Issue Type: Improvement
>            Reporter: Sebb
>         Attachments: MessageDigestHelper.java, MessageDigestHelper.java
>
>
> DigestUtils is starting to get a bit unwieldy with so many similar static methods.
> One approach would be to use a Fluent approach (method chaining).
> e.g. DigestUtils.MDA("My-Digest").digestHex(File f);
> There would only need to be digest,digestHex and update instance methods for the different
input types, currently byte, ByteBuffer, InputStream, File.
> Whereas at present these are repeated for each digest type.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message