Package org.apache.nifi.processors.smb
Class GetSmbFile
java.lang.Object
org.apache.nifi.components.AbstractConfigurableComponent
org.apache.nifi.processor.AbstractSessionFactoryProcessor
org.apache.nifi.processor.AbstractProcessor
org.apache.nifi.processors.smb.GetSmbFile
- All Implemented Interfaces:
org.apache.nifi.components.ConfigurableComponent,org.apache.nifi.processor.Processor
@TriggerWhenEmpty
@InputRequirement(INPUT_FORBIDDEN)
@Tags("samba, smb, cifs, files, get")
@CapabilityDescription("Reads file from a samba network location to FlowFiles. Use this processor instead of a cifs mounts if share access control is important. Configure the Hostname, Share and Directory accordingly: \\\\[Hostname]\\[Share]\\[path\\to\\Directory]")
@SeeAlso({PutSmbFile.class,ListSmb.class,FetchSmb.class})
@WritesAttribute(attribute="filename",description="The filename is set to the name of the file on the network share") @WritesAttribute(attribute="path",description="The path is set to the relative path of the file\'s network share name. For example, if the input is set to \\\\hostname\\share\\tmp, files picked up from \\tmp will have the path attribute set to tmp") @WritesAttribute(attribute="file.creationTime",description="The date and time that the file was created. May not work on all file systems") @WritesAttribute(attribute="file.lastModifiedTime",description="The date and time that the file was last modified. May not work on all file systems") @WritesAttribute(attribute="file.lastAccessTime",description="The date and time that the file was last accessed. May not work on all file systems") @WritesAttribute(attribute="absolute.path",description="The full path from where a file was picked up. This includes the hostname and the share name")
public class GetSmbFile
extends org.apache.nifi.processor.AbstractProcessor
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final org.apache.nifi.components.PropertyDescriptorprivate static final DateTimeFormatterstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorstatic final Stringstatic final org.apache.nifi.components.PropertyDescriptorstatic final Stringstatic final Stringstatic final Stringstatic final Stringprivate Patternprivate final BlockingQueue<String> static final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorprivate booleanstatic final org.apache.nifi.components.PropertyDescriptorprivate final Lockstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorprivate Patternstatic final org.apache.nifi.components.PropertyDescriptorprivate static final List<org.apache.nifi.components.PropertyDescriptor> private final AtomicLongprivate final Lockstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.processor.Relationshipprivate static final Set<org.apache.nifi.processor.Relationship> static final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorstatic final Stringstatic final Stringstatic final Stringstatic final Stringprivate Set<com.hierynomus.mssmb2.SMB2ShareAccess> private com.hierynomus.smbj.SMBClientstatic final org.apache.nifi.components.PropertyDescriptor -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Collection<org.apache.nifi.components.ValidationResult> customValidate(org.apache.nifi.components.ValidationContext validationContext) private booleanfilterFile(String directory, String filename, long fileAttributes) Set<org.apache.nifi.processor.Relationship> final List<org.apache.nifi.components.PropertyDescriptor> private voidinitiateFilterFile(org.apache.nifi.processor.ProcessContext context) (package private) com.hierynomus.smbj.SMBClientinitSmbClient(org.apache.nifi.processor.ProcessContext context) voidonScheduled(org.apache.nifi.processor.ProcessContext context) voidvoidonTrigger(org.apache.nifi.processor.ProcessContext context, org.apache.nifi.processor.ProcessSession session) performListing(com.hierynomus.smbj.share.DiskShare diskShare, String directory, String filter, boolean recurseSubdirectories) Methods inherited from class org.apache.nifi.processor.AbstractProcessor
onTriggerMethods inherited from class org.apache.nifi.processor.AbstractSessionFactoryProcessor
getControllerServiceLookup, getIdentifier, getLogger, getNodeTypeProvider, init, initialize, isConfigurationRestored, isScheduled, toString, updateConfiguredRestoredTrue, updateScheduledFalse, updateScheduledTrueMethods inherited from class org.apache.nifi.components.AbstractConfigurableComponent
equals, getPropertyDescriptor, getPropertyDescriptors, getSupportedDynamicPropertyDescriptor, hashCode, onPropertyModified, validateMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.nifi.components.ConfigurableComponent
getPropertyDescriptor, getPropertyDescriptors, onPropertyModified, validateMethods inherited from interface org.apache.nifi.processor.Processor
isStateful, migrateProperties, migrateRelationships
-
Field Details
-
SHARE_ACCESS_NONE
- See Also:
-
SHARE_ACCESS_READ
- See Also:
-
SHARE_ACCESS_READDELETE
- See Also:
-
SHARE_ACCESS_READWRITEDELETE
- See Also:
-
HOSTNAME
public static final org.apache.nifi.components.PropertyDescriptor HOSTNAME -
SHARE
public static final org.apache.nifi.components.PropertyDescriptor SHARE -
DIRECTORY
public static final org.apache.nifi.components.PropertyDescriptor DIRECTORY -
DOMAIN
public static final org.apache.nifi.components.PropertyDescriptor DOMAIN -
USERNAME
public static final org.apache.nifi.components.PropertyDescriptor USERNAME -
PASSWORD
public static final org.apache.nifi.components.PropertyDescriptor PASSWORD -
SHARE_ACCESS
public static final org.apache.nifi.components.PropertyDescriptor SHARE_ACCESS -
RECURSE
public static final org.apache.nifi.components.PropertyDescriptor RECURSE -
KEEP_SOURCE_FILE
public static final org.apache.nifi.components.PropertyDescriptor KEEP_SOURCE_FILE -
FILE_FILTER
public static final org.apache.nifi.components.PropertyDescriptor FILE_FILTER -
PATH_FILTER
public static final org.apache.nifi.components.PropertyDescriptor PATH_FILTER -
IGNORE_HIDDEN_FILES
public static final org.apache.nifi.components.PropertyDescriptor IGNORE_HIDDEN_FILES -
POLLING_INTERVAL
public static final org.apache.nifi.components.PropertyDescriptor POLLING_INTERVAL -
BATCH_SIZE
public static final org.apache.nifi.components.PropertyDescriptor BATCH_SIZE -
FILE_CREATION_TIME_ATTRIBUTE
- See Also:
-
FILE_LAST_MODIFY_TIME_ATTRIBUTE
- See Also:
-
FILE_LAST_ACCESS_TIME_ATTRIBUTE
- See Also:
-
FILE_SIZE_ATTRIBUTE
- See Also:
-
FILE_MODIFY_DATE_ATTR_FORMAT
- See Also:
-
dateFormatter
-
REL_SUCCESS
public static final org.apache.nifi.processor.Relationship REL_SUCCESS -
PROPERTY_DESCRIPTORS
-
RELATIONSHIPS
-
fileQueue
-
inProcess
-
recentlyProcessed
-
queueLock
-
listingLock
-
queueLastUpdated
-
smbClient
private com.hierynomus.smbj.SMBClient smbClient -
filePattern
-
pathPattern
-
ignoreHidden
private boolean ignoreHidden
-
-
Constructor Details
-
GetSmbFile
public GetSmbFile()
-
-
Method Details
-
getRelationships
- Specified by:
getRelationshipsin interfaceorg.apache.nifi.processor.Processor- Overrides:
getRelationshipsin classorg.apache.nifi.processor.AbstractSessionFactoryProcessor
-
getSupportedPropertyDescriptors
- Overrides:
getSupportedPropertyDescriptorsin classorg.apache.nifi.components.AbstractConfigurableComponent
-
onScheduled
@OnScheduled public void onScheduled(org.apache.nifi.processor.ProcessContext context) -
onStopped
@OnStopped public void onStopped() -
customValidate
protected Collection<org.apache.nifi.components.ValidationResult> customValidate(org.apache.nifi.components.ValidationContext validationContext) - Overrides:
customValidatein classorg.apache.nifi.components.AbstractConfigurableComponent
-
initSmbClient
com.hierynomus.smbj.SMBClient initSmbClient(org.apache.nifi.processor.ProcessContext context) -
initiateFilterFile
private void initiateFilterFile(org.apache.nifi.processor.ProcessContext context) -
filterFile
-
onTrigger
public void onTrigger(org.apache.nifi.processor.ProcessContext context, org.apache.nifi.processor.ProcessSession session) throws org.apache.nifi.processor.exception.ProcessException - Specified by:
onTriggerin classorg.apache.nifi.processor.AbstractProcessor- Throws:
org.apache.nifi.processor.exception.ProcessException
-