diff --git a/.idea/misc.xml b/.idea/misc.xml index 107263f..2fc18bf 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,8 +3,9 @@ diff --git a/docs/allclasses-index.html b/docs/allclasses-index.html index 1570d53..5d58619 100644 --- a/docs/allclasses-index.html +++ b/docs/allclasses-index.html @@ -2,10 +2,10 @@ - -All Classes + +All Classes (Cleaver) - + @@ -21,7 +21,7 @@ - - - - - - - - - - -
- -
- -
-
- - -

Class ChopJob

-
-
-
java.lang.Object -
java.lang.Thread -
eu.steffo.cleaver.logic.Job -
eu.steffo.cleaver.logic.ChopJob
-
-
-
-
-
-
All Implemented Interfaces:
-
Runnable
-
-
-
public class ChopJob
-extends Job
-
A Job that converts regular files into chopped (*.chp + *.cXX) files.
-
-
- -
-
- -
-
-
- - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/Job.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/Job.html deleted file mode 100644 index ab99717..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/Job.html +++ /dev/null @@ -1,488 +0,0 @@ - - - - - -Job - - - - - - - - - - - - - - - - - -
- -
- -
-
- - -

Class Job

-
-
-
java.lang.Object -
java.lang.Thread -
eu.steffo.cleaver.logic.Job
-
-
-
-
-
All Implemented Interfaces:
-
Runnable
-
-
-
Direct Known Subclasses:
-
ChopJob, StitchJob
-
-
-
public abstract class Job
-extends Thread
-
A Thread that allows access to the basic .
-
-
- -
-
- -
-
-
- - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/StitchJob.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/StitchJob.html deleted file mode 100644 index 39cced2..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/StitchJob.html +++ /dev/null @@ -1,571 +0,0 @@ - - - - - -StitchJob - - - - - - - - - - - - - - - - - -
- -
- -
-
- - -

Class StitchJob

-
-
-
java.lang.Object -
java.lang.Thread -
eu.steffo.cleaver.logic.Job -
eu.steffo.cleaver.logic.StitchJob
-
-
-
-
-
-
All Implemented Interfaces:
-
Runnable
-
-
-
public class StitchJob
-extends Job
-
A Job that converts chopped (*.chp + *.cXX) files back into regular files.
-
-
- -
-
- -
-
-
- - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/compress/CompressConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/compress/CompressConfig.html deleted file mode 100644 index 54637c5..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/compress/CompressConfig.html +++ /dev/null @@ -1,277 +0,0 @@ - - - - - -CompressConfig - - - - - - - - - - - - - - - - - -
- -
- -
-
- - -

Class CompressConfig

-
-
-
java.lang.Object -
eu.steffo.cleaver.logic.compress.CompressConfig
-
-
-
-
public class CompressConfig
-extends Object
-
A class containing the configuration for the compression step of a Job.
-
-
- -
-
- -
-
-
- - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/compress/package-summary.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/compress/package-summary.html deleted file mode 100644 index c5007d1..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/compress/package-summary.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - -eu.steffo.cleaver.logic.compress - - - - - - - - - - - - - - - - - -
- -
-
-
- -

Package eu.steffo.cleaver.logic.compress

-
-
-
- - -
The package containing classes related to the (de)compression functionality.
-
-
-
    -
  • -
    - - - - - - - - - - - - - - -
    Class Summary 
    ClassDescription
    CompressConfig -
    A class containing the configuration for the compression step of a Job.
    -
    -
    -
  • -
-
-
-
- - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/compress/package-tree.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/compress/package-tree.html deleted file mode 100644 index 2147183..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/compress/package-tree.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - -eu.steffo.cleaver.logic.compress Class Hierarchy - - - - - - - - - - - - - - - - - -
- -
-
-
-

Hierarchy For Package eu.steffo.cleaver.logic.compress

-Package Hierarchies: - -
-
-
-

Class Hierarchy

- -
-
-
- - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/DeflateConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/DeflateConfig.html index c882760..aa10980 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/DeflateConfig.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/DeflateConfig.html @@ -2,12 +2,14 @@ - -DeflateConfig + +DeflateConfig (Cleaver) - + + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ICompressConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ICompressConfig.html index 99423bc..b98d867 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ICompressConfig.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ICompressConfig.html @@ -2,12 +2,13 @@ - -ICompressConfig + +ICompressConfig (Cleaver) - + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/IConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/IConfig.html index 7f237cf..cdf0a9f 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/IConfig.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/IConfig.html @@ -2,12 +2,14 @@ - -IConfig + +IConfig (Cleaver) - + + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ICryptConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ICryptConfig.html index 1eb8a5b..fb44388 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ICryptConfig.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ICryptConfig.html @@ -2,12 +2,13 @@ - -ICryptConfig + +ICryptConfig (Cleaver) - + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ISplitConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ISplitConfig.html index f1293e3..b3afa7a 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ISplitConfig.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/ISplitConfig.html @@ -2,12 +2,13 @@ - -ISplitConfig + +ISplitConfig (Cleaver) - + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/PartsConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/PartsConfig.html index 686a205..79bb08d 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/PartsConfig.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/PartsConfig.html @@ -2,12 +2,16 @@ - -PartsConfig + +PartsConfig (Cleaver) - + + + + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/PasswordConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/PasswordConfig.html index c9c0a84..4bed7cd 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/PasswordConfig.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/PasswordConfig.html @@ -2,12 +2,16 @@ - -PasswordConfig + +PasswordConfig (Cleaver) - + + + + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/SizeConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/SizeConfig.html index ab10aa2..55d3931 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/SizeConfig.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/SizeConfig.html @@ -2,12 +2,16 @@ - -SizeConfig + +SizeConfig (Cleaver) - + + + + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/package-summary.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/package-summary.html index 683ef8a..18e5b55 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/package-summary.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/package-summary.html @@ -2,12 +2,13 @@ - -eu.steffo.cleaver.logic.config + +eu.steffo.cleaver.logic.config (Cleaver) - + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/package-tree.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/package-tree.html index 1f798d7..913cda4 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/package-tree.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/config/package-tree.html @@ -2,10 +2,10 @@ - -eu.steffo.cleaver.logic.config Class Hierarchy + +eu.steffo.cleaver.logic.config Class Hierarchy (Cleaver) - + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/CryptConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/CryptConfig.html deleted file mode 100644 index e824ac7..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/CryptConfig.html +++ /dev/null @@ -1,342 +0,0 @@ - - - - - -CryptConfig - - - - - - - - - - - - - - - - - -
- -
- -
-
- - -

Class CryptConfig

-
-
-
java.lang.Object -
eu.steffo.cleaver.logic.crypt.CryptConfig
-
-
-
-
public class CryptConfig
-extends Object
-
A class containing the configuration for the encryption/decryption step of a Job.
-
-
- -
-
-
    - -
  • -
    - - -

    Field Details

    -
      -
    • -
      -

      key

      -
      protected final String key
      -
      -
    • -
    -
    -
  • - -
  • -
    - - -

    Constructor Details

    -
      -
    • -
      -

      CryptConfig

      -
      public CryptConfig​(String key)
      -
      Construct a new CryptConfig with a specific encryption key.
      -
      -
      Parameters:
      -
      key - The encryption key.
      -
      -
      -
    • -
    -
    -
  • - -
  • -
    - - -

    Method Details

    - -
    -
  • -
-
-
-
- - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/CryptInputStream.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/CryptInputStream.html deleted file mode 100644 index 94b08f9..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/CryptInputStream.html +++ /dev/null @@ -1,237 +0,0 @@ - - - - - -CryptInputStream - - - - - - - - - - - - - - - - - -
- -
- -
-
- - -

Class CryptInputStream

-
-
-
java.lang.Object -
java.io.InputStream -
java.io.FilterInputStream -
eu.steffo.cleaver.logic.crypt.CryptInputStream
-
-
-
-
-
-
All Implemented Interfaces:
-
Closeable, AutoCloseable
-
-
-
public class CryptInputStream
-extends FilterInputStream
-
-
- -
-
- -
-
-
- - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/CryptOutputStream.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/CryptOutputStream.html deleted file mode 100644 index d3535f5..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/CryptOutputStream.html +++ /dev/null @@ -1,237 +0,0 @@ - - - - - -CryptOutputStream - - - - - - - - - - - - - - - - - -
- -
- -
-
- - -

Class CryptOutputStream

-
-
-
java.lang.Object -
java.io.OutputStream -
java.io.FilterOutputStream -
eu.steffo.cleaver.logic.crypt.CryptOutputStream
-
-
-
-
-
-
All Implemented Interfaces:
-
Closeable, Flushable, AutoCloseable
-
-
-
public class CryptOutputStream
-extends FilterOutputStream
-
-
- -
-
- -
-
-
- - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/package-summary.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/package-summary.html deleted file mode 100644 index 6a130e7..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/package-summary.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - -eu.steffo.cleaver.logic.crypt - - - - - - - - - - - - - - - - - -
- -
-
-
- -

Package eu.steffo.cleaver.logic.crypt

-
-
-
- - -
The package containing classes related to the encryption/decryption functionality.
-
-
- -
-
-
- - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/package-tree.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/package-tree.html deleted file mode 100644 index 40e219f..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/crypt/package-tree.html +++ /dev/null @@ -1,132 +0,0 @@ - - - - - -eu.steffo.cleaver.logic.crypt Class Hierarchy - - - - - - - - - - - - - - - - - -
- -
-
-
-

Hierarchy For Package eu.steffo.cleaver.logic.crypt

-Package Hierarchies: - -
-
-
-

Class Hierarchy

- -
-
-
- - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/ChopJob.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/ChopJob.html index 1762181..2c8ac06 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/ChopJob.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/ChopJob.html @@ -2,12 +2,26 @@ - -ChopJob + +ChopJob (Cleaver) - + + + + + + + + + + + + + + + @@ -158,7 +172,8 @@ extends Job< private static int BUFFER_SIZE -
The size of the buffer where bytes are read to before being written into the OutputStream (currently 8192 bytes).
+
The size in bytes of the BufferedInputStream wrapping the FileInputStream created when run() is called to read the data from the + file to be chopped.
@@ -261,26 +276,27 @@ extends Job< protected void createChpFile​(OutputStream outputStream) -
Generate the element tree by calling the ICleaverOutputStream.toElement(Document) method on the passed OutputStream and by writing the - results on a file with a Transformer.
+
+ Generate the *.chp file for this job by calling the ICleaverOutputStream.toElement(Document) method of the passed OutputStream and by + writing the results on a file with a Transformer.
-protected OutputStream +private OutputStream createCompressOutputStream​(OutputStream sourceOutputStream)
Create a OutputStream based on the compressConfig of this ChopJob.
-protected OutputStream +private OutputStream createCryptOutputStream​(OutputStream sourceOutputStream)
Create a OutputStream based on the cryptConfig of this ChopJob.
-protected OutputStream +private OutputStream createSplitOutputStream()
Create a OutputStream based on the splitConfig of this ChopJob.
@@ -370,7 +386,12 @@ extends Job<

BUFFER_SIZE

private static final int BUFFER_SIZE
-
The size of the buffer where bytes are read to before being written into the OutputStream (currently 8192 bytes).
+
The size in bytes of the BufferedInputStream wrapping the FileInputStream created when run() is called to read the data from the + file to be chopped. + + The same value is used for a temporary array in the run() method where bytes are stored between being read from the input file and being written + through a ICleaverOutputStream; after that amount of bytes are written, Job.getProgress() is called, updating the + Progress of this Job.
See Also:
Constant Field Values
@@ -479,8 +500,8 @@ extends Job<
  • createSplitOutputStream

    -
    protected OutputStream createSplitOutputStream() - throws FileNotFoundException
    +
    private OutputStream createSplitOutputStream() + throws FileNotFoundException
    Create a OutputStream based on the splitConfig of this ChopJob. The OutputStream will be the sink of the stream chain created in run().
    @@ -499,7 +520,7 @@ extends Job<
  • createCompressOutputStream

    -
    protected OutputStream createCompressOutputStream​(OutputStream sourceOutputStream)
    +
    private OutputStream createCompressOutputStream​(OutputStream sourceOutputStream)
    Create a OutputStream based on the compressConfig of this ChopJob. The created OutputStream will wrap the OutputStream passed as parameter, creating a chain of streams.
    @@ -516,7 +537,7 @@ extends Job<
  • createCryptOutputStream

    -
    protected OutputStream createCryptOutputStream​(OutputStream sourceOutputStream)
    +
    private OutputStream createCryptOutputStream​(OutputStream sourceOutputStream)
    Create a OutputStream based on the cryptConfig of this ChopJob. The created OutputStream will wrap the OutputStream passed as parameter, creating a chain of streams.
    @@ -534,11 +555,49 @@ extends Job<

    createChpFile

    protected void createChpFile​(OutputStream outputStream)
    -
    Generate the element tree by calling the ICleaverOutputStream.toElement(Document) method on the passed OutputStream and by writing the - results on a file with a Transformer.
    +

    + Generate the *.chp file for this job by calling the ICleaverOutputStream.toElement(Document) method of the passed OutputStream and by + writing the results on a file with a Transformer. +

    +

    + *.chp files are special XML files that contain information about the stream chain used to produce the *.cXX files. +

    +

    + Every *.chp file has a <Cleaver> element as root containing all the information required to reconstruct the original file. +

    +

    + Every element below the root represents either a FilterOutputStream that wraps the stream represented by its child, or, if the child node is + <OriginalFile>, a OutputStream reading from the File having the text content + of the <OriginalFile> element as name. +

    +

    + Possible tags representing FilterOutputStreams are: +

    + +

    + Possible tags representing simple OutputStreams are: +

    + +

    + Elements may include attributes that useful or required to reconstruct the original file: for example, the <Crypt> tag includes the value of + the salt used to generate the AES key and the value of the initialization vector used to encrypt the stream. +

    +

    Example

    +
    + <?xml version="1.0" encoding="UTF-8" standalone="no"?><Cleaver><Crypt algorithm="AES" iteration-count="65535" iv="-10,6,-6,63,-68,-106,-102,-12,59,-58,-123,-76,-16,-29,-75,-67," key-algorithm="PBKDF2WithHmacSHA512" key-length="256" mode-of-operation="CFB8" padding="NoPadding" salt="-60,-84,108,93,100,5,63,44,"><Deflate><Split part-size="16384" parts="4"><OriginalFile>AllThreeExample.png</OriginalFile></Split></Deflate></Crypt></Cleaver> +
    Parameters:
    outputStream - The OutputStream to create the *.chp file for.
    +
    See Also:
    +
    ICleaverInputStream.fromElement(Element, File, String)
  • diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/Job.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/Job.html index 307ccfd..24bcec6 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/Job.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/Job.html @@ -2,12 +2,22 @@ - -Job + +Job (Cleaver) - + + + + + + + + + + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/StitchJob.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/StitchJob.html index 8dd8d45..3c9cf7d 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/StitchJob.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/StitchJob.html @@ -2,12 +2,23 @@ - -StitchJob + +StitchJob (Cleaver) - + + + + + + + + + + + + @@ -149,7 +160,7 @@ extends Job< private static int BUFFER_SIZE -
    The size of the buffer where bytes are read to before being written into the OutputStream (currently 8192 bytes).
    +
    The size in bytes of the BufferedOutputStream wrapping the FileOutputStream created by run() to reconstruct the original file.
    @@ -334,7 +345,11 @@ extends Job<

    BUFFER_SIZE

    private static final int BUFFER_SIZE
    -
    The size of the buffer where bytes are read to before being written into the OutputStream (currently 8192 bytes).
    +
    The size in bytes of the BufferedOutputStream wrapping the FileOutputStream created by run() to reconstruct the original file. + + The same value is used for a temporary array in the run() method where bytes are stored between being read through a ICleaverInputStream + and being written to the reconstructed file; after that amount of bytes are written, Job.getProgress() is called, updating the + Progress of this Job.
    See Also:
    Constant Field Values
    diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/package-summary.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/package-summary.html index f98f8bf..7f41d3f 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/package-summary.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/package-summary.html @@ -2,12 +2,13 @@ - -eu.steffo.cleaver.logic.job + +eu.steffo.cleaver.logic.job (Cleaver) - + + @@ -73,7 +74,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    -
    The package containing all possible Jobs.
    +
    The package containing all possible Jobs that Cleaver can execute.
      diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/package-tree.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/package-tree.html index 603d722..8de30b8 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/package-tree.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/job/package-tree.html @@ -2,10 +2,10 @@ - -eu.steffo.cleaver.logic.job Class Hierarchy + +eu.steffo.cleaver.logic.job Class Hierarchy (Cleaver) - + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/package-summary.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/package-summary.html deleted file mode 100644 index 7b39b0e..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/package-summary.html +++ /dev/null @@ -1,150 +0,0 @@ - - - - - -eu.steffo.cleaver.logic - - - - - - - - - - - - - - - - - -
      - -
      -
      -
      - -

      Package eu.steffo.cleaver.logic

      -
      -
      -
      - - -
      A package containing the core logic of the program.
      -
      -
      See Also:
      -
      eu.steffo.cleaver.logic.compress, -eu.steffo.cleaver.logic.crypt, -eu.steffo.cleaver.logic.split, -eu.steffo.cleaver.logic.progress
      -
      -
      -
      -
        -
      • -
        - - - - - - - - - - - - - - - - - - - - - - -
        Class Summary 
        ClassDescription
        ChopJob -
        A Job that converts regular files into chopped (*.chp + *.cXX) files.
        -
        Job -
        A Thread that allows access to the basic .
        -
        StitchJob -
        A Job that converts chopped (*.chp + *.cXX) files back into regular files.
        -
        -
        -
      • -
      -
      -
      -
      - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/package-tree.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/package-tree.html deleted file mode 100644 index a80cfd5..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/package-tree.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - -eu.steffo.cleaver.logic Class Hierarchy - - - - - - - - - - - - - - - - - -
      - -
      -
      -
      -

      Hierarchy For Package eu.steffo.cleaver.logic

      -Package Hierarchies: - -
      -
      -
      -

      Class Hierarchy

      - -
      -
      -
      - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/ErrorProgress.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/ErrorProgress.html index 9e0fba3..a826878 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/ErrorProgress.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/ErrorProgress.html @@ -2,12 +2,16 @@ - -ErrorProgress + +ErrorProgress (Cleaver) - + + + + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/FinishedProgress.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/FinishedProgress.html index c245acf..13b45a2 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/FinishedProgress.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/FinishedProgress.html @@ -2,12 +2,14 @@ - -FinishedProgress + +FinishedProgress (Cleaver) - + + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/NotStartedProgress.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/NotStartedProgress.html index fb78a88..81a51a4 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/NotStartedProgress.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/NotStartedProgress.html @@ -2,12 +2,14 @@ - -NotStartedProgress + +NotStartedProgress (Cleaver) - + + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/Progress.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/Progress.html index d31e7ff..bd56523 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/Progress.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/Progress.html @@ -2,12 +2,13 @@ - -Progress + +Progress (Cleaver) - + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/WorkingProgress.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/WorkingProgress.html index 4f72cd5..8dffc7c 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/WorkingProgress.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/WorkingProgress.html @@ -2,12 +2,15 @@ - -WorkingProgress + +WorkingProgress (Cleaver) - + + + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/package-summary.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/package-summary.html index 0e35c31..0e35660 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/package-summary.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/package-summary.html @@ -2,12 +2,13 @@ - -eu.steffo.cleaver.logic.progress + +eu.steffo.cleaver.logic.progress (Cleaver) - + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/package-tree.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/package-tree.html index 44109b2..11c2d20 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/package-tree.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/progress/package-tree.html @@ -2,10 +2,10 @@ - -eu.steffo.cleaver.logic.progress Class Hierarchy + +eu.steffo.cleaver.logic.progress Class Hierarchy (Cleaver) - + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/MergeConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/MergeConfig.html deleted file mode 100644 index 81178b0..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/MergeConfig.html +++ /dev/null @@ -1,403 +0,0 @@ - - - - - -MergeConfig - - - - - - - - - - - - - - - - - -
      - -
      - -
      -
      - - -

      Class MergeConfig

      -
      -
      -
      java.lang.Object -
      eu.steffo.cleaver.logic.split.SplitConfig -
      eu.steffo.cleaver.logic.split.MergeConfig
      -
      -
      -
      -
      -
      public class MergeConfig
      -extends SplitConfig
      -
      A SplitConfig created by reading a *.chp file, containing the number of parts and their size, but not the resulting file size.
      -
      -
      -
        - -
      • -
        - - -

        Field Summary

        -
        - - - - - - - - - - - - - - - - - - - - - - - - - - -
        Fields 
        Modifier and TypeFieldDescription
        private intparts -
        The number of parts the file was split in.
        -
        private longpartSize -
        The size of the parts the file was split in.
        -
        private longtotalSize -
        The total size of the original file.
        -
        -
        -
        -
      • - -
      • -
        - - -

        Constructor Summary

        -
        - - - - - - - - - - - - - - -
        Constructors 
        ConstructorDescription
        MergeConfig​(long partSize, -int parts, -long totalSize) -
        Construct a new MergeConfig.
        -
        -
        -
        -
      • - -
      • -
        - - -

        Method Summary

        -
        -
        -
        - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        Modifier and TypeMethodDescription
        intgetPartCount() 
        longgetPartSize() 
        longgetTotalSize() 
        StringtoString() 
        -
        -
        -
        -

        Methods inherited from class eu.steffo.cleaver.logic.split.SplitConfig

        - - -toElement
        -
        -

        Methods inherited from class java.lang.Object

        - - -clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
        -
        -
      • -
      -
      -
      -
        - -
      • -
        - - -

        Field Details

        -
          -
        • -
          -

          partSize

          -
          private long partSize
          -
          The size of the parts the file was split in.
          -
          -
        • -
        • -
          -

          parts

          -
          private int parts
          -
          The number of parts the file was split in.
          -
          -
        • -
        • -
          -

          totalSize

          -
          private long totalSize
          -
          The total size of the original file.
          -
          -
        • -
        -
        -
      • - -
      • -
        - - -

        Constructor Details

        -
          -
        • -
          -

          MergeConfig

          -
          public MergeConfig​(long partSize, -int parts, -long totalSize)
          -
          Construct a new MergeConfig.
          -
          -
          Parameters:
          -
          partSize - The size of the parts the file was split in.
          -
          parts - The number of parts the file was split in.
          -
          totalSize - The total size of the original file.
          -
          -
          -
        • -
        -
        -
      • - -
      • -
        - - -

        Method Details

        - -
        -
      • -
      -
      -
      -
      - - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitByPartsConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitByPartsConfig.html deleted file mode 100644 index 781acdc..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitByPartsConfig.html +++ /dev/null @@ -1,385 +0,0 @@ - - - - - -SplitByPartsConfig - - - - - - - - - - - - - - - - - -
      - -
      - -
      -
      - - -

      Class SplitByPartsConfig

      -
      -
      -
      java.lang.Object -
      eu.steffo.cleaver.logic.split.SplitConfig -
      eu.steffo.cleaver.logic.split.SplitByPartsConfig
      -
      -
      -
      -
      -
      public class SplitByPartsConfig
      -extends SplitConfig
      -
      -
      -
        - -
      • -
        - - -

        Field Summary

        -
        - - - - - - - - - - - - - - - - - - - - - -
        Fields 
        Modifier and TypeFieldDescription
        private intparts -
        The number of parts the file should be split in.
        -
        private longtotalSize -
        The total size of the file to split.
        -
        -
        -
        -
      • - -
      • -
        - - -

        Constructor Summary

        -
        - - - - - - - - - - - - - - -
        Constructors 
        ConstructorDescription
        SplitByPartsConfig​(int parts, -long totalSize) -
        Construct a new SplitByPartsConfig.
        -
        -
        -
        -
      • - -
      • -
        - - -

        Method Summary

        -
        -
        -
        - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        Modifier and TypeMethodDescription
        intgetPartCount() 
        longgetPartSize() 
        longgetTotalSize() 
        StringtoString() 
        -
        -
        -
        -

        Methods inherited from class eu.steffo.cleaver.logic.split.SplitConfig

        - - -toElement
        -
        -

        Methods inherited from class java.lang.Object

        - - -clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
        -
        -
      • -
      -
      -
      -
        - -
      • -
        - - -

        Field Details

        -
          -
        • -
          -

          parts

          -
          private int parts
          -
          The number of parts the file should be split in.
          -
          -
        • -
        • -
          -

          totalSize

          -
          private long totalSize
          -
          The total size of the file to split.
          -
          -
        • -
        -
        -
      • - -
      • -
        - - -

        Constructor Details

        -
          -
        • -
          -

          SplitByPartsConfig

          -
          public SplitByPartsConfig​(int parts, -long totalSize)
          -
          Construct a new SplitByPartsConfig.
          -
          -
          Parameters:
          -
          parts - The number of parts the file should be split in.
          -
          totalSize - The total size of the file to split.
          -
          -
          -
        • -
        -
        -
      • - -
      • -
        - - -

        Method Details

        - -
        -
      • -
      -
      -
      -
      - - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitBySizeConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitBySizeConfig.html deleted file mode 100644 index 797df1d..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitBySizeConfig.html +++ /dev/null @@ -1,386 +0,0 @@ - - - - - -SplitBySizeConfig - - - - - - - - - - - - - - - - - -
      - -
      - -
      -
      - - -

      Class SplitBySizeConfig

      -
      -
      -
      java.lang.Object -
      eu.steffo.cleaver.logic.split.SplitConfig -
      eu.steffo.cleaver.logic.split.SplitBySizeConfig
      -
      -
      -
      -
      -
      public class SplitBySizeConfig
      -extends SplitConfig
      -
      A SplitConfig for splitting a file in parts of a specific part size.
      -
      -
      -
        - -
      • -
        - - -

        Field Summary

        -
        - - - - - - - - - - - - - - - - - - - - - -
        Fields 
        Modifier and TypeFieldDescription
        private longpartSize -
        The size of the parts to split the file in.
        -
        private longtotalSize -
        The total size of the file to split.
        -
        -
        -
        -
      • - -
      • -
        - - -

        Constructor Summary

        -
        - - - - - - - - - - - - - - -
        Constructors 
        ConstructorDescription
        SplitBySizeConfig​(long partSize, -long totalSize) -
        Construct a new SplitBySizeConfig.
        -
        -
        -
        -
      • - -
      • -
        - - -

        Method Summary

        -
        -
        -
        - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        Modifier and TypeMethodDescription
        intgetPartCount() 
        longgetPartSize() 
        longgetTotalSize() 
        StringtoString() 
        -
        -
        -
        -

        Methods inherited from class eu.steffo.cleaver.logic.split.SplitConfig

        - - -toElement
        -
        -

        Methods inherited from class java.lang.Object

        - - -clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
        -
        -
      • -
      -
      -
      -
        - -
      • -
        - - -

        Field Details

        -
          -
        • -
          -

          partSize

          -
          private long partSize
          -
          The size of the parts to split the file in.
          -
          -
        • -
        • -
          -

          totalSize

          -
          private long totalSize
          -
          The total size of the file to split.
          -
          -
        • -
        -
        -
      • - -
      • -
        - - -

        Constructor Details

        -
          -
        • -
          -

          SplitBySizeConfig

          -
          public SplitBySizeConfig​(long partSize, -long totalSize)
          -
          Construct a new SplitBySizeConfig.
          -
          -
          Parameters:
          -
          partSize - The size of the parts to split the file in.
          -
          totalSize - The total size of the file to split.
          -
          -
          -
        • -
        -
        -
      • - -
      • -
        - - -

        Method Details

        - -
        -
      • -
      -
      -
      -
      - - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitConfig.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitConfig.html deleted file mode 100644 index 45acf40..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitConfig.html +++ /dev/null @@ -1,330 +0,0 @@ - - - - - -SplitConfig - - - - - - - - - - - - - - - - - -
      - -
      - -
      -
      - - -

      Class SplitConfig

      -
      -
      -
      java.lang.Object -
      eu.steffo.cleaver.logic.split.SplitConfig
      -
      -
      -
      -
      Direct Known Subclasses:
      -
      MergeConfig, SplitByPartsConfig, SplitBySizeConfig
      -
      -
      -
      public abstract class SplitConfig
      -extends Object
      -
      A class containing the configuration for the split/merge step of a Job.
      -
      -
      - -
      -
      -
        - -
      • -
        - - -

        Constructor Details

        - -
        -
      • - -
      • -
        - - -

        Method Details

        -
          -
        • -
          -

          toElement

          -
          public Element toElement​(Document doc)
          -
          Create a Element representing this SplitConfig (to be used in *.chp metadata files).
          -
          -
          Parameters:
          -
          doc - The Document the Element should be created in.
          -
          Returns:
          -
          The created Element.
          -
          See Also:
          -
          ChopJob, -StitchJob
          -
          -
          -
        • -
        • -
          -

          getPartSize

          -
          public abstract long getPartSize()
          -
          -
          Returns:
          -
          The size in bytes of a single part of the file.
          -
          -
          -
        • -
        • -
          -

          getPartCount

          -
          public abstract int getPartCount()
          -
          -
          Returns:
          -
          The number of parts the file should be split in.
          -
          -
          -
        • -
        • -
          -

          getTotalSize

          -
          public abstract long getTotalSize()
          -
          -
          Returns:
          -
          The total size of the original file.
          -
          -
          -
        • -
        • -
          -

          toString

          -
          public abstract String toString()
          -
          -
          Overrides:
          -
          toString in class Object
          -
          Returns:
          -
          The string representation of the SplitConfig, to be used in the jobs table.
          -
          See Also:
          -
          JobsTablePanel
          -
          -
          -
        • -
        -
        -
      • -
      -
      -
      -
      - - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitFileInputStream.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitFileInputStream.html deleted file mode 100644 index ec9c03b..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitFileInputStream.html +++ /dev/null @@ -1,334 +0,0 @@ - - - - - -SplitFileInputStream - - - - - - - - - - - - - - - - - -
      - -
      - -
      -
      - - -

      Class SplitFileInputStream

      -
      -
      -
      java.lang.Object -
      java.io.InputStream -
      eu.steffo.cleaver.logic.split.SplitFileInputStream
      -
      -
      -
      -
      -
      All Implemented Interfaces:
      -
      Closeable, AutoCloseable
      -
      -
      -
      public class SplitFileInputStream
      -extends InputStream
      -
      -
      - -
      -
      - -
      -
      -
      - - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitFileOutputStream.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitFileOutputStream.html deleted file mode 100644 index cfb68d3..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/SplitFileOutputStream.html +++ /dev/null @@ -1,468 +0,0 @@ - - - - - -SplitFileOutputStream - - - - - - - - - - - - - - - - - -
      - -
      - -
      -
      - - -

      Class SplitFileOutputStream

      -
      -
      -
      java.lang.Object -
      java.io.OutputStream -
      eu.steffo.cleaver.logic.split.SplitFileOutputStream
      -
      -
      -
      -
      -
      All Implemented Interfaces:
      -
      Closeable, Flushable, AutoCloseable
      -
      -
      -
      public class SplitFileOutputStream
      -extends OutputStream
      -
      A custom OutputStream that writes the bytes received in input in multiple files with a progressively increasing number (.c1, .c2, .c3, and so on). - - Bytes are written to a file until its length reaches maximumByteCount, then the program switches to the following file (.c2 if .c1 is full, .c3 if .c2 is full, and so on).
      -
      -
      - -
      -
      - -
      -
      -
      - - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/package-summary.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/package-summary.html deleted file mode 100644 index e1a6b2a..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/package-summary.html +++ /dev/null @@ -1,157 +0,0 @@ - - - - - -eu.steffo.cleaver.logic.split - - - - - - - - - - - - - - - - - -
      - -
      -
      -
      - -

      Package eu.steffo.cleaver.logic.split

      -
      -
      -
      - - -
      The package containing classes related to the file splitting/merging functionality.
      -
      -
      - -
      -
      -
      - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/package-tree.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/package-tree.html deleted file mode 100644 index 0214e99..0000000 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/split/package-tree.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - -eu.steffo.cleaver.logic.split Class Hierarchy - - - - - - - - - - - - - - - - - -
      - -
      -
      -
      -

      Hierarchy For Package eu.steffo.cleaver.logic.split

      -Package Hierarchies: - -
      -
      -
      -

      Class Hierarchy

      - -
      -
      -
      - - - diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/stream/ICleaverStream.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/stream/ICleaverStream.html index 987fa11..e266338 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/stream/ICleaverStream.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/stream/ICleaverStream.html @@ -2,12 +2,13 @@ - -ICleaverStream + +ICleaverStream (Cleaver) - + + diff --git a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/stream/input/CleaverCryptInputStream.html b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/stream/input/CleaverCryptInputStream.html index 2d9ab44..5266a8e 100644 --- a/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/stream/input/CleaverCryptInputStream.html +++ b/docs/eu.steffo.cleaver/eu/steffo/cleaver/logic/stream/input/CleaverCryptInputStream.html @@ -2,12 +2,24 @@ - -CleaverCryptInputStream + +CleaverCryptInputStream (Cleaver) - + + + + + + + + + + + + + @@ -21,7 +33,7 @@ - - - - + + + + + + + + - - + +
    @@ -214,12 +235,12 @@ extends -
  • Module
  • +
  • Module
  • Package
  • Tree
  • -
  • Index
  • -
  • Help
  • +
  • Index
  • +
  • Help
  • +
    +
    +
    Author:
    +
    Stefano Pigozzi
    +
    -B C D E F G I J K M N O P R S T U W 
    All Classes All Packages +B C D E F G I J K L M N O P R S T U W 
    All Classes All Packages
  • -B C D E F G I J K M N O P R S T U W 
    All Classes All Packages +B C D E F G I J K L M N O P R S T U W 
    All Classes All Packages
    diff --git a/docs/style.css b/docs/style.css index 0b0e99c..bb95c0a 100644 --- a/docs/style.css +++ b/docs/style.css @@ -1,3 +1,5 @@ +/* "blood" theme for javadoc by Stefano Pigozzi */ + .topNav, .bottomNav { background-color: #440000 !important; } @@ -31,6 +33,7 @@ a:hover, a:active { color: #F8981D !important; } -body, .overviewSummary caption, .memberSummary caption, .typeSummary caption, .useSummary caption, .constantsSummary caption, .deprecatedSummary caption, .requiresSummary caption, .packagesSummary caption, .providesSummary caption, .usesSummary caption { +body, .overviewSummary caption, .memberSummary caption, .typeSummary caption, .useSummary caption, .constantsSummary caption, .deprecatedSummary caption, +.requiresSummary caption, .packagesSummary caption, .providesSummary caption, .usesSummary caption { color: black; } \ No newline at end of file diff --git a/docs/type-search-index.js b/docs/type-search-index.js index bd6b947..b6d77f8 100644 --- a/docs/type-search-index.js +++ b/docs/type-search-index.js @@ -1 +1 @@ -typeSearchIndex = [{"l":"All Classes","url":"allclasses-index.html"},{"p":"eu.steffo.cleaver.gui.panels","l":"ChopAndStitchPanel"},{"p":"eu.steffo.cleaver.logic.job","l":"ChopJob"},{"p":"eu.steffo.cleaver.gui.panels","l":"ChopPanel"},{"p":"eu.steffo.cleaver.errors","l":"ChpFileError"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"CleaverCryptInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"CleaverCryptOutputStream"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"CleaverDeflateInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"CleaverDeflateOutputStream"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"CleaverForkFileInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"CleaverForkFileOutputStream"},{"p":"eu.steffo.cleaver.gui","l":"CleaverFrame"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"CleaverSimpleFileInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"CleaverSimpleFileOutputStream"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"CleaverSplitFileInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"CleaverSplitFileOutputStream"},{"p":"eu.steffo.cleaver.gui.panels.rows.option","l":"CompressRow"},{"p":"eu.steffo.cleaver.gui.panels.rows","l":"CreateJobButtonRow"},{"p":"eu.steffo.cleaver.gui.panels","l":"CreateJobPanel"},{"p":"eu.steffo.cleaver.gui.panels.rows.option","l":"CryptRow"},{"p":"eu.steffo.cleaver.logic.config","l":"DeflateConfig"},{"p":"eu.steffo.cleaver.logic.progress","l":"ErrorProgress"},{"p":"eu.steffo.cleaver.gui.panels.rows","l":"FileSelectRow"},{"p":"eu.steffo.cleaver.logic.progress","l":"FinishedProgress"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"ICleaverInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"ICleaverOutputStream"},{"p":"eu.steffo.cleaver.logic.stream","l":"ICleaverStream"},{"p":"eu.steffo.cleaver.logic.config","l":"ICompressConfig"},{"p":"eu.steffo.cleaver.logic.config","l":"IConfig"},{"p":"eu.steffo.cleaver.logic.config","l":"ICryptConfig"},{"p":"eu.steffo.cleaver.logic.config","l":"ISplitConfig"},{"p":"eu.steffo.cleaver.logic.job","l":"Job"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsButtonsPanel"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsTablePanel.JobsTableModel"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsTablePanel"},{"p":"eu.steffo.cleaver.gui.panels.rows.option","l":"KeyRow"},{"p":"eu.steffo.cleaver","l":"Main"},{"p":"eu.steffo.cleaver.logic.progress","l":"NotStartedProgress"},{"p":"eu.steffo.cleaver.gui.panels.rows.option","l":"OptionRow"},{"p":"eu.steffo.cleaver.logic.config","l":"PartsConfig"},{"p":"eu.steffo.cleaver.logic.config","l":"PasswordConfig"},{"p":"eu.steffo.cleaver.errors","l":"ProgrammingError"},{"p":"eu.steffo.cleaver.logic.progress","l":"Progress"},{"p":"eu.steffo.cleaver.gui.panels.rows","l":"Row"},{"p":"eu.steffo.cleaver.logic.utils","l":"SaltSerializer"},{"p":"eu.steffo.cleaver.logic.config","l":"SizeConfig"},{"p":"eu.steffo.cleaver.gui.panels.rows.option","l":"SplitRow"},{"p":"eu.steffo.cleaver.logic.job","l":"StitchJob"},{"p":"eu.steffo.cleaver.gui.panels","l":"StitchPanel"},{"p":"eu.steffo.cleaver.gui.panels.rows","l":"TitleRow"},{"p":"eu.steffo.cleaver.logic.progress","l":"WorkingProgress"}] \ No newline at end of file +typeSearchIndex = [{"l":"All Classes","url":"allclasses-index.html"},{"p":"eu.steffo.cleaver.gui.panels","l":"ChopAndStitchPanel"},{"p":"eu.steffo.cleaver.logic.job","l":"ChopJob"},{"p":"eu.steffo.cleaver.gui.panels","l":"ChopPanel"},{"p":"eu.steffo.cleaver.errors","l":"ChpFileError"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"CleaverCryptInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"CleaverCryptOutputStream"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"CleaverDeflateInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"CleaverDeflateOutputStream"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"CleaverForkFileInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"CleaverForkFileOutputStream"},{"p":"eu.steffo.cleaver.gui","l":"CleaverFrame"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"CleaverSimpleFileInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"CleaverSimpleFileOutputStream"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"CleaverSplitFileInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"CleaverSplitFileOutputStream"},{"p":"eu.steffo.cleaver.gui.panels.rows.option","l":"CompressRow"},{"p":"eu.steffo.cleaver.gui.panels.rows","l":"CreateJobButtonRow"},{"p":"eu.steffo.cleaver.gui.panels","l":"CreateJobPanel"},{"p":"eu.steffo.cleaver.gui.panels.rows.option","l":"CryptRow"},{"p":"eu.steffo.cleaver.logic.config","l":"DeflateConfig"},{"p":"eu.steffo.cleaver.logic.progress","l":"ErrorProgress"},{"p":"eu.steffo.cleaver.gui.panels.rows","l":"FileSelectRow"},{"p":"eu.steffo.cleaver.logic.progress","l":"FinishedProgress"},{"p":"eu.steffo.cleaver.logic.stream.input","l":"ICleaverInputStream"},{"p":"eu.steffo.cleaver.logic.stream.output","l":"ICleaverOutputStream"},{"p":"eu.steffo.cleaver.logic.stream","l":"ICleaverStream"},{"p":"eu.steffo.cleaver.logic.config","l":"ICompressConfig"},{"p":"eu.steffo.cleaver.logic.config","l":"IConfig"},{"p":"eu.steffo.cleaver.logic.config","l":"ICryptConfig"},{"p":"eu.steffo.cleaver.logic.config","l":"ISplitConfig"},{"p":"eu.steffo.cleaver.logic.job","l":"Job"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsButtonsPanel"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsTablePanel.JobsTableModel"},{"p":"eu.steffo.cleaver.gui.panels","l":"JobsTablePanel"},{"p":"eu.steffo.cleaver.gui.panels.rows.option","l":"KeyRow"},{"p":"eu.steffo.cleaver","l":"Main"},{"p":"eu.steffo.cleaver.logic.progress","l":"NotStartedProgress"},{"p":"eu.steffo.cleaver.gui.panels.rows.option","l":"OptionRow"},{"p":"eu.steffo.cleaver.logic.config","l":"PartsConfig"},{"p":"eu.steffo.cleaver.logic.config","l":"PasswordConfig"},{"p":"eu.steffo.cleaver.errors","l":"ProgrammingError"},{"p":"eu.steffo.cleaver.logic.progress","l":"Progress"},{"p":"eu.steffo.cleaver.gui.panels.rows","l":"Row"},{"p":"eu.steffo.cleaver.logic.utils","l":"SafeLongToInt"},{"p":"eu.steffo.cleaver.logic.utils","l":"SaltSerializer"},{"p":"eu.steffo.cleaver.logic.config","l":"SizeConfig"},{"p":"eu.steffo.cleaver.gui.panels.rows.option","l":"SplitRow"},{"p":"eu.steffo.cleaver.logic.job","l":"StitchJob"},{"p":"eu.steffo.cleaver.gui.panels","l":"StitchPanel"},{"p":"eu.steffo.cleaver.gui.panels.rows","l":"TitleRow"},{"p":"eu.steffo.cleaver.logic.progress","l":"WorkingProgress"}] \ No newline at end of file diff --git a/resources/style.css b/resources/style.css index 0b0e99c..bb95c0a 100644 --- a/resources/style.css +++ b/resources/style.css @@ -1,3 +1,5 @@ +/* "blood" theme for javadoc by Stefano Pigozzi */ + .topNav, .bottomNav { background-color: #440000 !important; } @@ -31,6 +33,7 @@ a:hover, a:active { color: #F8981D !important; } -body, .overviewSummary caption, .memberSummary caption, .typeSummary caption, .useSummary caption, .constantsSummary caption, .deprecatedSummary caption, .requiresSummary caption, .packagesSummary caption, .providesSummary caption, .usesSummary caption { +body, .overviewSummary caption, .memberSummary caption, .typeSummary caption, .useSummary caption, .constantsSummary caption, .deprecatedSummary caption, +.requiresSummary caption, .packagesSummary caption, .providesSummary caption, .usesSummary caption { color: black; } \ No newline at end of file diff --git a/src/eu/steffo/cleaver/Main.java b/src/eu/steffo/cleaver/Main.java index 64dbc3b..c902255 100644 --- a/src/eu/steffo/cleaver/Main.java +++ b/src/eu/steffo/cleaver/Main.java @@ -9,7 +9,7 @@ import java.util.ArrayList; /** * The class containing the main function. */ -public class Main { +public final class Main { /** * The {@link ArrayList} of {@link Job Jobs} that the {@link CleaverFrame} will manipulate. * @@ -30,4 +30,9 @@ public class Main { cf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); cf.setVisible(true); } + + /** + * Disallow instantiations of this class. + */ + private Main() {} } diff --git a/src/eu/steffo/cleaver/logic/job/ChopJob.java b/src/eu/steffo/cleaver/logic/job/ChopJob.java index 7df0a96..8518e33 100644 --- a/src/eu/steffo/cleaver/logic/job/ChopJob.java +++ b/src/eu/steffo/cleaver/logic/job/ChopJob.java @@ -184,10 +184,48 @@ public class ChopJob extends Job { } /** - * Generate the element tree by calling the {@link ICleaverOutputStream#toElement(Document)} method on the passed {@link OutputStream} and by writing the - * results on a file with a {@link Transformer}. + *

    + * Generate the *.chp file for this job by calling the {@link ICleaverOutputStream#toElement(Document)} method of the passed {@link OutputStream} and by + * writing the results on a file with a {@link Transformer}. + *

    + *

    + * *.chp files are special XML files that contain information about the stream chain used to produce the *.cXX files. + *

    + *

    + * Every *.chp file has a {@literal } element as root containing all the information required to reconstruct the original file. + *

    + *

    + * Every element below the root represents either a {@link FilterOutputStream} that wraps the stream represented by its child, or, if the child node is + * {@literal }, a {@link OutputStream} reading from the {@link File} having the {@link Element#getTextContent() text content} + * of the {@literal } element as name. + *

    + *

    + * Possible tags representing {@link FilterOutputStream FilterOutputStreams} are: + *

    + * + *

    + * Possible tags representing {@link OutputStream simple OutputStreams} are: + *

    + * + *

    + * Elements may include attributes that useful or required to reconstruct the original file: for example, the {@literal } tag includes the value of + * the salt used to generate the AES key and the value of the initialization vector used to encrypt the stream. + *

    + *

    Example

    + *
    + * {@literal AllThreeExample.png} + *
    + * * @param outputStream The {@link OutputStream} to create the *.chp file for. - */ + * @see eu.steffo.cleaver.logic.stream.input.ICleaverInputStream#fromElement(Element, File, String) + * */ protected void createChpFile(OutputStream outputStream) { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder; diff --git a/src/eu/steffo/cleaver/logic/job/package-info.java b/src/eu/steffo/cleaver/logic/job/package-info.java index 609c4ba..692c237 100644 --- a/src/eu/steffo/cleaver/logic/job/package-info.java +++ b/src/eu/steffo/cleaver/logic/job/package-info.java @@ -1,4 +1,4 @@ /** - * The package containing all possible {@link eu.steffo.cleaver.logic.job.Job Jobs}. + * The package containing all possible {@link eu.steffo.cleaver.logic.job.Job Jobs} that Cleaver can execute. */ package eu.steffo.cleaver.logic.job; diff --git a/src/eu/steffo/cleaver/logic/package-info.java b/src/eu/steffo/cleaver/logic/package-info.java deleted file mode 100644 index d58bde9..0000000 --- a/src/eu/steffo/cleaver/logic/package-info.java +++ /dev/null @@ -1,10 +0,0 @@ -/** - * A package containing the core logic of the program. - * - * @see eu.steffo.cleaver.logic.config; - * @see eu.steffo.cleaver.logic.job; - * @see eu.steffo.cleaver.logic.progress; - * @see eu.steffo.cleaver.logic.stream; - * @see eu.steffo.cleaver.logic.utils; - */ -package eu.steffo.cleaver.logic; diff --git a/src/eu/steffo/cleaver/logic/stream/input/ICleaverInputStream.java b/src/eu/steffo/cleaver/logic/stream/input/ICleaverInputStream.java index 42b517b..78ee242 100644 --- a/src/eu/steffo/cleaver/logic/stream/input/ICleaverInputStream.java +++ b/src/eu/steffo/cleaver/logic/stream/input/ICleaverInputStream.java @@ -8,6 +8,7 @@ import org.w3c.dom.Element; import java.io.File; import java.io.IOException; import java.io.InputStream; +import java.io.OutputStream; /** * A {@link ICleaverStream} that is also a {@link InputStream} (a stream you can read bytes from). @@ -15,25 +16,45 @@ import java.io.InputStream; */ public interface ICleaverInputStream extends ICleaverStream { /** + *

    * Construct a ICleaverInputStream from a XML tag. - * @param element The XML tag. + *

    + *

    + * Based on the input {@link Element#getTagName() tagName}, a different ICleaverInputStream is created: + *

    + * + * + * @param element The XML {@link Element} to construct the ICleaverInputStream from. * @param chpFileDirectory The directory in which the *.chp file is located. - * @param key The key to use in case <Crypt> tags are present. + * @param password The password to use in case <Crypt> tags are present. * @throws ChpFileError If an unknown tag is encountered. * @throws IOException If something goes wrong while opening the streams ({@link java.io.FileNotFoundException missing files}, insufficient permissions, * ...) * @return The created ICleaverInputStream. + * @see eu.steffo.cleaver.logic.job.ChopJob + * @see SaltSerializer */ - static InputStream fromElement(Element element, File chpFileDirectory, String key) throws ChpFileError, IOException { + static InputStream fromElement(Element element, File chpFileDirectory, String password) throws ChpFileError, IOException { String tagName = element.getTagName(); switch (tagName) { case "Crypt": - InputStream cryptChild = fromElement((Element)element.getFirstChild(), chpFileDirectory, key); + InputStream cryptChild = fromElement((Element)element.getFirstChild(), chpFileDirectory, password); byte[] salt = SaltSerializer.deserialize(element.getAttribute("salt")); byte[] iv = SaltSerializer.deserialize(element.getAttribute("iv")); - return new CleaverCryptInputStream(cryptChild, key.toCharArray(), salt, iv); + return new CleaverCryptInputStream(cryptChild, password.toCharArray(), salt, iv); case "Deflate": - InputStream deflateChild = fromElement((Element)element.getFirstChild(), chpFileDirectory, key); + InputStream deflateChild = fromElement((Element)element.getFirstChild(), chpFileDirectory, password); return new CleaverDeflateInputStream(deflateChild); case "Fork": int parts = Integer.parseInt(element.getAttribute("parts")); diff --git a/src/module-info.java b/src/module-info.java index 58db38e..372228a 100644 --- a/src/module-info.java +++ b/src/module-info.java @@ -1,10 +1,38 @@ +import org.w3c.dom.Element; + +import java.io.File; + /** + *

    * A file compression, encryption and splitting utility in Java. - * + *

    + *

    * It includes a easy to use {@link javax.swing} GUI. - * - *

    - * + *

    + *

    + * + *

    + *

    + * It can chop regular files into a *.chp metadata file and multiple *.cXX (where XX is a number from 1 to {@link Integer#MAX_VALUE}) data files, which + * can then be stitched together to recreate the original file. + *

    + *

    + * Multiple options can be selected while chopping files: + *

    + * + *

    + * Multiple files can be chopped or stitched at a time: each operation is run in a separate {@link Thread} called {@link eu.steffo.cleaver.logic.job.Job Job} + * that performs the task independently from the other Jobs. + *

    + *

    + * *.chp files are documented {@link eu.steffo.cleaver.logic.job.ChopJob here} and + * {@link eu.steffo.cleaver.logic.stream.input.ICleaverInputStream#fromElement(Element, File, String) here}. + *

    * @author Stefano Pigozzi */ open module eu.steffo.cleaver {