Subversion Repository Public Repository

litesoft

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
// This Source Code is in the Public Domain per: http://unlicense.org
package org.litesoft.encryption.symmetric;

public abstract class AbstractSymmetricEncryptor implements SymmetricEncryptor
{
    public String encrypt( String pClearText )
    {
        if ( pClearText == null )
        {
            return null;
        }
        Helper zHelper = createHelper( pClearText );
        for ( int zChar; -1 != (zChar = zHelper.read()); )
        {
            zHelper.encode( zChar );
        }
        return zHelper.done();
    }

    public String decrypt( String pEncryptedText )
            throws DecryptFailureException
    {
        if ( pEncryptedText == null )
        {
            return null;
        }
        Helper zHelper = createHelper( pEncryptedText );
        for ( int zChar; -1 != (zChar = zHelper.read()); )
        {
            zHelper.decode( zChar );
        }
        return zHelper.done();
    }

    abstract protected Helper createHelper( String pText );

    protected abstract static class Helper
    {
        private int mTextIndex = 0;
        private String mText;
        protected StringBuilder mSB = new StringBuilder();

        public Helper( String pText )
        {
            mText = pText;
        }

        public int read()
        {
            return (mTextIndex < mText.length()) ? mText.charAt( mTextIndex++ ) : -1;
        }

        public String toString()
        {
            return mSB.toString();
        }

        abstract public String done();

        abstract public void encode( int pChar );

        abstract public void decode( int pChar );
    }
}

Commits for litesoft/trunk/Java/core/Anywhere/src/org/litesoft/encryption/symmetric/AbstractSymmetricEncryptor.java

Diff revisions: vs.
Revision Author Commited Message
947 Diff Diff GeorgeS picture GeorgeS Fri 06 Jun, 2014 23:36:56 +0000

Correct Spelling of package!

49 Diff Diff GeorgeS picture GeorgeS Mon 12 Apr, 2010 02:59:10 +0000

License Text

2 GeorgeS picture GeorgeS Sun 07 Feb, 2010 12:50:58 +0000