Class ZipAggregationStrategy
- java.lang.Object
-
- org.apache.camel.processor.aggregate.zipfile.ZipAggregationStrategy
-
- All Implemented Interfaces:
org.apache.camel.AggregationStrategy
public class ZipAggregationStrategy extends Object implements org.apache.camel.AggregationStrategy
This aggregation strategy will aggregate all incoming messages into a ZIP file.If the incoming exchanges contain
GenericFileMessage
file name will be taken from the body otherwise the body content will be treated as a byte array and the ZIP entry will be named using the message id (unless the flag useFilenameHeader is set to true.Note: Please note that this aggregation strategy requires eager completion check to work properly.
-
-
Constructor Summary
Constructors Constructor Description ZipAggregationStrategy()
ZipAggregationStrategy(boolean preserveFolderStructure)
ZipAggregationStrategy(boolean preserveFolderStructure, boolean useFilenameHeader)
ZipAggregationStrategy(boolean preserveFolderStructure, boolean useFilenameHeader, boolean useTempFile)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.camel.Exchange
aggregate(org.apache.camel.Exchange oldExchange, org.apache.camel.Exchange newExchange)
String
getFilePrefix()
Gets the prefix used when creating the ZIP file name.String
getFileSuffix()
Gets the suffix used when creating the ZIP file name.File
getParentDir()
void
onCompletion(org.apache.camel.Exchange exchange, org.apache.camel.Exchange inputExchange)
void
setFilePrefix(String filePrefix)
Sets the prefix that will be used when creating the ZIP filename.void
setFileSuffix(String fileSuffix)
Sets the suffix that will be used when creating the ZIP filename.void
setParentDir(File parentDir)
Sets the parent directory to use for writing temporary files.void
setParentDir(String parentDir)
Sets the parent directory to use for writing temporary files.
-
-
-
Constructor Detail
-
ZipAggregationStrategy
public ZipAggregationStrategy()
-
ZipAggregationStrategy
public ZipAggregationStrategy(boolean preserveFolderStructure)
- Parameters:
preserveFolderStructure
- if true, the folder structure is preserved when the source is a type ofGenericFileMessage
. If used with a file, use recursive=true.
-
ZipAggregationStrategy
public ZipAggregationStrategy(boolean preserveFolderStructure, boolean useFilenameHeader)
- Parameters:
preserveFolderStructure
- if true, the folder structure is preserved when the source is a type ofGenericFileMessage
. If used with a file, use recursive=true.useFilenameHeader
- if true, the filename header will be used to name aggregated byte arrays within the ZIP file.
-
ZipAggregationStrategy
public ZipAggregationStrategy(boolean preserveFolderStructure, boolean useFilenameHeader, boolean useTempFile)
- Parameters:
preserveFolderStructure
- if true, the folder structure is preserved when the source is a type ofGenericFileMessage
. If used with a file, use recursive=true.useFilenameHeader
- if true, the filename header will be used to name aggregated byte arrays within the ZIP file.useTempFile
- if true, the ZipFileSystem will use temporary files for zip manipulations instead of memory.
-
-
Method Detail
-
getFilePrefix
public String getFilePrefix()
Gets the prefix used when creating the ZIP file name.- Returns:
- the prefix
-
setFilePrefix
public void setFilePrefix(String filePrefix)
Sets the prefix that will be used when creating the ZIP filename.- Parameters:
filePrefix
- prefix to use on ZIP file.
-
getFileSuffix
public String getFileSuffix()
Gets the suffix used when creating the ZIP file name.- Returns:
- the suffix
-
setFileSuffix
public void setFileSuffix(String fileSuffix)
Sets the suffix that will be used when creating the ZIP filename.- Parameters:
fileSuffix
- suffix to use on ZIP file.
-
getParentDir
public File getParentDir()
-
setParentDir
public void setParentDir(File parentDir)
Sets the parent directory to use for writing temporary files.
-
setParentDir
public void setParentDir(String parentDir)
Sets the parent directory to use for writing temporary files.
-
aggregate
public org.apache.camel.Exchange aggregate(org.apache.camel.Exchange oldExchange, org.apache.camel.Exchange newExchange)
- Specified by:
aggregate
in interfaceorg.apache.camel.AggregationStrategy
-
onCompletion
public void onCompletion(org.apache.camel.Exchange exchange, org.apache.camel.Exchange inputExchange)
- Specified by:
onCompletion
in interfaceorg.apache.camel.AggregationStrategy
-
-