Package org.apache.synapse.commons.vfs

## Class VFSUtils

- java.lang.Object
- - org.apache.synapse.commons.vfs.VFSUtils

-     public class VFSUtils
      extends Object

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static String` | `DISK_SHARE_ACCESS_MASK` |
    `static String` | `DISK_SHARE_ACCESS_MASK_MAX_ALLOWED` |
    `static String` | `IMPLICIT_MODE` | FTPS implicit mode
    `static String` | `PASSIVE_MODE` | Passive mode
    `static String` | `PROTECTION_MODE` |

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static boolean` | `acquireLock​(org.apache.commons.vfs2.FileSystemManager fsManager, org.apache.commons.vfs2.FileObject fo, org.apache.commons.vfs2.FileSystemOptions fso, boolean isListener)` | Acquires a file item lock before processing the item, guaranteing that the file is not processed while it is being uploaded and/or the item is not processed by two listeners
    `static boolean` | `acquireLock​(org.apache.commons.vfs2.FileSystemManager fsManager, org.apache.commons.vfs2.FileObject fo, VFSParamDTO paramDTO, org.apache.commons.vfs2.FileSystemOptions fso, boolean isListener)` | Acquires a file item lock before processing the item, guaranteing that the file is not processed while it is being uploaded and/or the item is not processed by two listeners
    `static org.apache.commons.vfs2.FileSystemOptions` | `attachFileSystemOptions​(Map<String,​String> options, org.apache.commons.vfs2.FileSystemManager fsManager)` |
    `static String` | `getFileName​(org.apache.axis2.context.MessageContext msgCtx, VFSOutTransportInfo vfsOutInfo)` |
    `static Long` | `getLastModified​(org.apache.axis2.context.MessageContext msgCtx)` | Helper method to get last modified date from msgCtx
    `static String` | `getProperty​(org.apache.commons.vfs2.FileContent message, String property)` | Get a String property from FileContent message
    `static String` | `getSystemTime​(String dateFormat)` |
    `static boolean` | `isFailRecord​(org.apache.commons.vfs2.FileSystemManager fsManager, org.apache.commons.vfs2.FileObject fo)` |
    `static boolean` | `isFailRecord​(org.apache.commons.vfs2.FileSystemManager fsManager, org.apache.commons.vfs2.FileObject fo, org.apache.commons.vfs2.FileSystemOptions fso)` |
    `static boolean` | `isReadyToRead​(org.apache.commons.vfs2.FileObject fo, Long waitTimeBeforeRead)` |
    `static void` | `markFailRecord​(org.apache.commons.vfs2.FileSystemManager fsManager, org.apache.commons.vfs2.FileObject fo)` |
    `static void` | `markFailRecord​(org.apache.commons.vfs2.FileSystemManager fsManager, org.apache.commons.vfs2.FileObject fo, org.apache.commons.vfs2.FileSystemOptions fso)` |
    `static String` | `maskURLPassword​(String url)` | Mask the password of the connection url with ***
    `static Map<String,​String>` | `parseSchemeFileOptions​(String fileURI, Properties vfsProperties)` |
    `static Map<String,​String>` | `parseSchemeFileOptions​(String fileURI, org.apache.axis2.description.ParameterInclude params)` |
    `static void` | `releaseFail​(org.apache.commons.vfs2.FileSystemManager fsManager, org.apache.commons.vfs2.FileObject fo)` |
    `static void` | `releaseFail​(org.apache.commons.vfs2.FileSystemManager fsManager, org.apache.commons.vfs2.FileObject fo, org.apache.commons.vfs2.FileSystemOptions fso)` |
    `static void` | `releaseLock​(org.apache.commons.vfs2.FileSystemManager fsManager, org.apache.commons.vfs2.FileObject fo, org.apache.commons.vfs2.FileSystemOptions fso)` | Release a file item lock acquired either by the VFS listener or a sender
    `static String` | `resolveUriHost​(String uri)` | Function to resolve hostname of the vfs uri
    `static String` | `resolveUriHost​(String uri, StringBuilder strBuilder)` | Function to resolve the hostname of uri to ip for following vfs protocols.
    `static ArrayList<String>` | `validateAndGetDiskShareAccessMask​(String diskShareAccessMask)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### PASSIVE_MODE

          public static final String PASSIVE_MODE

      Passive mode
      See Also:
        Constant Field Values

    - #### IMPLICIT_MODE

          public static final String IMPLICIT_MODE

      FTPS implicit mode
      See Also:
        Constant Field Values

    - #### PROTECTION_MODE

          public static final String PROTECTION_MODE

      See Also:
        Constant Field Values

    - #### DISK_SHARE_ACCESS_MASK

          public static final String DISK_SHARE_ACCESS_MASK

      See Also:
        Constant Field Values

    - #### DISK_SHARE_ACCESS_MASK_MAX_ALLOWED

          public static final String DISK_SHARE_ACCESS_MASK_MAX_ALLOWED

      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getProperty

          public static String getProperty​(org.apache.commons.vfs2.FileContent message,
                                           String property)

      Get a String property from FileContent message
      Parameters:
        `message` - the File message
        `property` - property name
      Returns:
        property value

    - #### getFileName

          public static String getFileName​(org.apache.axis2.context.MessageContext msgCtx,
                                           VFSOutTransportInfo vfsOutInfo)

    - #### acquireLock

          public static boolean acquireLock​(org.apache.commons.vfs2.FileSystemManager fsManager,
                                            org.apache.commons.vfs2.FileObject fo,
                                            org.apache.commons.vfs2.FileSystemOptions fso,
                                            boolean isListener)

      Acquires a file item lock before processing the item, guaranteing that the file is not processed while it is being uploaded and/or the item is not processed by two listeners
      Parameters:
        `fsManager` - used to resolve the processing file
        `fo` - representing the processing file item
        `fso` - represents file system options used when resolving file from file system manager.
      Returns:
        boolean true if the lock has been acquired or false if not

    - #### acquireLock

          public static boolean acquireLock​(org.apache.commons.vfs2.FileSystemManager fsManager,
                                            org.apache.commons.vfs2.FileObject fo,
                                            VFSParamDTO paramDTO,
                                            org.apache.commons.vfs2.FileSystemOptions fso,
                                            boolean isListener)

      Acquires a file item lock before processing the item, guaranteing that the file is not processed while it is being uploaded and/or the item is not processed by two listeners
      Parameters:
        `fsManager` - used to resolve the processing file
        `fo` - representing the processing file item
        `fso` - represents file system options used when resolving file from file system manager.
      Returns:
        boolean true if the lock has been acquired or false if not

    - #### releaseLock

          public static void releaseLock​(org.apache.commons.vfs2.FileSystemManager fsManager,
                                         org.apache.commons.vfs2.FileObject fo,
                                         org.apache.commons.vfs2.FileSystemOptions fso)

      Release a file item lock acquired either by the VFS listener or a sender
      Parameters:
        `fsManager` - which is used to resolve the processed file
        `fo` - representing the processed file
        `fso` - represents file system options used when resolving file from file system manager.

    - #### maskURLPassword

          public static String maskURLPassword​(String url)

      Mask the password of the connection url with ***
      Parameters:
        `url` - the actual url
      Returns:
        the masked url

    - #### getSystemTime

          public static String getSystemTime​(String dateFormat)

    - #### getLastModified

          public static Long getLastModified​(org.apache.axis2.context.MessageContext msgCtx)

      Helper method to get last modified date from msgCtx
      Parameters:
        `msgCtx` -
      Returns:
        lastModifiedDate

    - #### markFailRecord

          public static void markFailRecord​(org.apache.commons.vfs2.FileSystemManager fsManager,
                                            org.apache.commons.vfs2.FileObject fo)

    - #### markFailRecord

          public static void markFailRecord​(org.apache.commons.vfs2.FileSystemManager fsManager,
                                            org.apache.commons.vfs2.FileObject fo,
                                            org.apache.commons.vfs2.FileSystemOptions fso)

    - #### isFailRecord

          public static boolean isFailRecord​(org.apache.commons.vfs2.FileSystemManager fsManager,
                                             org.apache.commons.vfs2.FileObject fo)

    - #### isFailRecord

          public static boolean isFailRecord​(org.apache.commons.vfs2.FileSystemManager fsManager,
                                             org.apache.commons.vfs2.FileObject fo,
                                             org.apache.commons.vfs2.FileSystemOptions fso)

    - #### isReadyToRead

          public static boolean isReadyToRead​(org.apache.commons.vfs2.FileObject fo,
                                              Long waitTimeBeforeRead)

      Parameters:
        `fo` - representing the processed file
        `waitTimeBeforeRead` - representing the time period in milliseconds to wait before reading the file
      Returns:
        boolean true if the can be processed or false if not

    - #### releaseFail

          public static void releaseFail​(org.apache.commons.vfs2.FileSystemManager fsManager,
                                         org.apache.commons.vfs2.FileObject fo)

    - #### releaseFail

          public static void releaseFail​(org.apache.commons.vfs2.FileSystemManager fsManager,
                                         org.apache.commons.vfs2.FileObject fo,
                                         org.apache.commons.vfs2.FileSystemOptions fso)

    - #### parseSchemeFileOptions

          public static Map<String,​String> parseSchemeFileOptions​(String fileURI,
                                                                        org.apache.axis2.description.ParameterInclude params)

    - #### parseSchemeFileOptions

          public static Map<String,​String> parseSchemeFileOptions​(String fileURI,
                                                                        Properties vfsProperties)

    - #### attachFileSystemOptions

          public static org.apache.commons.vfs2.FileSystemOptions attachFileSystemOptions​(Map<String,​String> options,
                                                                                          org.apache.commons.vfs2.FileSystemManager fsManager)
                                                                                   throws org.apache.commons.vfs2.FileSystemException

      Throws:
        `org.apache.commons.vfs2.FileSystemException`

    - #### validateAndGetDiskShareAccessMask

          public static ArrayList<String> validateAndGetDiskShareAccessMask​(String diskShareAccessMask)

    - #### resolveUriHost

          public static String resolveUriHost​(String uri)
                                       throws org.apache.commons.vfs2.FileSystemException,
                                              UnknownHostException

      Function to resolve hostname of the vfs uri
      Parameters:
        `uri` - URI need to resolve
      Returns:
        hostname resolved uri
      Throws:
        `org.apache.commons.vfs2.FileSystemException` - Unable to decode due to malformed URI
        `UnknownHostException` - Error occurred while resolving hostname of URI

    - #### resolveUriHost

          public static String resolveUriHost​(String uri,
                                              StringBuilder strBuilder)
                                       throws org.apache.commons.vfs2.FileSystemException,
                                              UnknownHostException

      Function to resolve the hostname of uri to ip for following vfs protocols. if not the protocol listed, return same uri provided for {uri} Protocols resolved : SMB
      Parameters:
        `uri` - URI need to resolve
        `strBuilder` - string builder to use to build the resulting uri
      Returns:
        hostname resolved uri
      Throws:
        `org.apache.commons.vfs2.FileSystemException` - Unable to decode due to malformed URI
        `UnknownHostException` - Error occurred while resolving hostname of URI