#   Licensed to the Apache Software Foundation (ASF) under one or more
#   contributor license agreements.  See the NOTICE file distributed with
#   this work for additional information regarding copyright ownership.
#   The ASF licenses this file to You under the Apache License, Version 2.0
#   (the "License"); you may not use this file except in compliance with
#   the License.  You may obtain a copy of the License at
#
#       http://www.apache.org/licenses/LICENSE-2.0
#
#   Unless required by applicable law or agreed to in writing, software
#   distributed under the License is distributed on an "AS IS" BASIS,
#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#   See the License for the specific language governing permissions and
#   limitations under the License.

# Factory
vfs/create-manager.error=Could not create a file system manager of class "{0}".

# AbstractFileObject
vfs.provider/delete-not-supported.error=This file type does not support delete.
vfs.provider/rename-not-supported.error=This file type does not support rename.
vfs.provider/write-append-not-supported.error=The file type does not support append mode.
vfs.provider/random-access-not-supported.error=The file type does not support random access.
vfs.provider/random-access-read-not-supported.error=The file type does not support read in random access mode.
vfs.provider/random-access-write-not-supported.error=The file type does not support write in random access mode.
vfs.provider/create-folder-not-supported.error=This file type does not support folder creation.
vfs.provider/get-last-modified-not-supported.error=This file type does not support retriving last modified time.
vfs.provider/set-last-modified-not-supported.error=This file type does not support setting last modified time.
vfs.provider/set-attribute-not-supported.error=This file type does not support setting attributes.
vfs.provider/remove-attribute-not-supported.error=This file type does not support removing attributes.
vfs.provider/get-attribute-not-supported.error=This file type does not support getting attributes.
vfs.provider/write-not-supported.error=This file type cannot be written to.
vfs.provider/get-type.error=Could not determine the type of file "{0}".
vfs.provider/list-children-not-folder.error=Could not list the contents of "{0}" because it is not a folder.
vfs.provider/list-children.error=Could not list the contents of folder "{0}".
vfs.provider/delete-read-only.error=Could not delete "{0}" because it is read-only.
vfs.provider/rename-read-only.error=Could not rename "{0}" because it is read-only.
vfs.provider/rename-parent-read-only.error=Could not rename "{0}" because "{1}" is read-only.
vfs.provider/rename-dest-exists.error=Destination "{0}" already existent.
vfs.provider/delete.error=Could not delete "{0}".
vfs.provider/rename.error=Could not rename "{0}" to "{1}".
vfs.provider/create-folder-mismatched-type.error=Could not create folder "{0}" because it already exists and is a file.
vfs.provider/create-folder-read-only.error=Could not create folder "{0}" because its parent folder is read-only.
vfs.provider/create-folder.error=Could not create folder "{0}".
vfs.provider/create-file.error=Could not create file "{0}".
vfs.provider/write-read-only.error=Could not write to "{0}" because it is read-only.
vfs.provider/write-not-file.error=Could not write to "{0}" because it is not a file.
vfs.provider/write.error=Could not write to "{0}".
vfs.provider/copy-file.error=Could not copy "{0}" to "{1}".
vfs.provider/rename-filename.error=You can only rename within the same folder. Invalid Filename: "{0}".
vfs.provider/copy-read-only.error=Could not copy {0} "{1}" to "{2}" because the destination file is read-only.
vfs.provider/copy-missing-file.error=Could not copy "{0}" because it does not exist.
vfs.provider/find-files.error=Could not find files in "{0}".
vfs.provider/check-is-executable.error=Could not determine if file "{0}" is executable.
vfs.provider/check-is-hidden.error=Could not determine if file "{0}" is hidden.
vfs.provider/check-is-writeable.error=Could not determine if file "{0}" is writeable.
vfs.provider/check-is-readable.error=Could not determine if file "{0}" is readable.
vfs.provider/check-is-symbolic-link.error=Could not determine if file "{0}" is a symbolic link.
vfs.provider/set-executable.error=Could not set the executable flag of file "{0}".
vfs.provider/set-writeable.error=Could not set the writeable flag of file "{0}".
vfs.provider/set-readable.error=Could not set the readable flag of file "{0}".
vfs.provider/get-url.error=Could not create URL for "{0}".
vfs.provider/resync.error=Could not resync "{0}".
vfs.provider/close.error=Could not close "{0}".
vfs.provider/read.error=Could not read file "{0}".
vfs.provider/random-access.error=Could not read/write file "{0}".
vfs.provider/read-not-readable.error=File "{0}" is not readable.
vfs.provider/read-not-file.error=Could not read from "{0}" because it is not a file.
vfs.provider/closed.error=File closed.

# DefaultFileContent
vfs.provider/get-size-not-file.error=Could not determine the size of "{0}" because it is not a file.
vfs.provider/get-size-write.error=Could not determine the size of file "{0}" because it is being written to.
vfs.provider/get-size.error=Could not determine the size of file "{0}".
vfs.provider/read-in-use.error=Could not read file "{0}" because it is currently being written to.
vfs.provider/write-in-use.error=Could not write to "{0}" because it is currently in use.
vfs.provider/random-in-use.error=Could not read/write file "{0}" because it is currently in use.
vfs.provider/get-last-modified-writing.error=Could not determine the last modified timestamp of "{0}" because it is being written to.
vfs.provider/get-last-modified-no-exist.error=Could not determine the last modified timestamp of "{0}" because it does not exist.
vfs.provider/get-last-modified.error=Could not determine the last modified timestamp of "{0}".
vfs.provider/set-last-modified-writing.error=Could not set the last modified timestamp of "{0}" because it is being written to.
vfs.provider/set-last-modified-no-exist.error=Could not set the last modified timestamp of "{0}" because it does not exist.
vfs.provider/set-last-modified.error=Could not set the last modified timestamp of "{0}".
vfs.provider/get-certificates-no-exist.error=Could not retrieve the certificates of "{0}" because it does not exist.
vfs.provider/get-certificates-writing.error=Could not retrieve the certificates of "{0}" because it is being written to.
vfs.provider/get-certificates.error=Could not retrieve the certificates of "{0}".
vfs.provider/close-instr.error=Could not close the input stream for file "{0}".
vfs.provider/close-outstr.error=Could not close the output stream for file "{0}".
vfs.provider/close-rac.error=Could not close the random access content for file "{0}".
vfs.provider/exists-attribute-no-exist.error=Could not check if attribute "{0}" of "{1}" exists because attributes are not supported.
vfs.provider/get-attributes-no-exist.error=Could not get attributes for file "{0}" because it does not exist.
vfs.provider/get-attributes.error=Could not get attributes "{0}".
vfs.provider/set-attribute-no-exist.error=Could not set attribute "{0}" of "{1}" because it does not exist.
vfs.provider/set-attribute.error=Could not set attribute "{0}" of "{1}".
vfs.provider/remove-attribute-no-exist.error=Could not check if attribute "{0}" of "{1}" exists because attributes are not supported.
vfs.provider/remove-attribute.error=Could not remove attribute "{0}" of "{1}".

# AbstractFileSystemProvider
vfs.provider/invalid-absolute-uri.error=Invalid absolute URI "{0}".
vfs.provider/not-layered-fs.error=File system for URL scheme "{0}" is not a layered file system.
vfs.provider/no-config-builder.error=File provider for URL scheme "{0}" does not provide a configuration builder.
vfs.provider/config-key-invalid.error=The configuration builder for scheme "{0}" has no option "{1}".
vfs.provider/config-value-invalid.error=The delegating configuration builder cant convert value "{2}" for key "{1}" scheme "{0}".
vfs.provider/config-too-many-values.error=Too many values for configuration builder for scheme "{0}" key "{1}".
vfs.provider/config-unexpected-primitive.error=Unexpected primitive "{0}".
vfs.provider/config-unexpected-value-class.error=Cant convert a "{0}" value for scheme "{1}" key "{2}".

# AbstractFileSystem
vfs.provider/files-cache-missing.error=No files-cache implementation set.
vfs.provider/mismatched-fs-for-name.error=Incorrect file system URI "{2}" in name "{0}", was expecting "{1}".
vfs.provider/junctions-not-supported.error=Junctions not supported for file system "{0}".
vfs.provider/notify-listener.warn=Could not notify listener of change to "{0}".
vfs.provider/replicate-missing-file.error=Could not replicate "{0}" as it does not exist.
vfs.provider/replicate-file.error=Could not replicate "{0}".
vfs.provider/resolve-file.error=Could not resolve file "{0}".

# AbstractFileProvider
vfs.provider/filename-parser-missing.error=No filename-parser implementation set.

# AbstractFileName
vfs.provider/filename-type.error=A filename can only be of type FileType.FOLDER or FileType.FILE

# Operations
vfs.operation/wrong-type.error=Can't lookup operation, wrong type: "{0}"
vfs.operation/not-found.error=Operation not found, type: "{0}"
vfs.operation/cant-register.error=Can't register operation, wrong type: "{0}"
vfs.operation/operation-not-supported.error=Operation "{0}" not supported.
vfs.operation/operation-provider-already-added.error=Operation provider already added to scheme "{0}"

# RandomAccess
vfs.provider/random-access-invalid-position.error=Invalid position: "{0}"
vfs.provider/random-access-open-failed.error=Could not access file "{0}" because it does not exist.

# UriParser
vfs.provider/missing-double-slashes.error=Expecting // to follow the scheme in URI "{0}".
vfs.provider/missing-hostname.error=Hostname missing from URI "{0}".
vfs.provider/missing-port.error=Port number is missing from URI "{0}".
vfs.provider/missing-hostname-path-sep.error=Expecting / to follow the hostname in URI "{0}".
vfs.provider/invalid-descendent-name.error=Invalid descendent file name "{0}".
vfs.provider/invalid-escape-sequence.error=Invalid URI escape sequence "{0}".
vfs.provider/invalid-relative-path.error=Invalid relative file name.

# DefaultFileSystemManager
vfs.impl/unknown-scheme.error=Unknown scheme "{0}" in URI "{1}".
vfs.impl/find-rel-file.error=Could not find file with URI "{0}" because it is a relative path, and no base URI was provided.
vfs.impl/multiple-providers-for-scheme.error=Multiple providers registered for URL scheme "{0}".
vfs.impl/configuration-already-set.error=FilesCache implementation already set.
vfs.impl/configuration-already-in-use.error=The configuration is already attached to an filesystemmanager. You cant change it anymore.
vfs.impl/unknown-provider.error=No file provider is registered with URI scheme "{0}" to handle file "{1}".
vfs.impl/no-provider-for-file.error=Could not find a file provider that can handle file "{0}".
vfs.impl/no-local-file-provider.error=Could not find a file provider which can handle local files.
vfs.impl/no-replicator.error=No file replicator configured.
vfs.impl/no-temp-file-store.error=No temporary file store configured.
vfs.impl/replicate-file.error=Could not replicate "{0}".
vfs.impl/delete-temp.warn=Could not clean up temporary file "{0}".
vfs.impl/init-replicator.error=Could not initialise file replicator.
vfs.impl/already-inited.error=Manager already inited, cant change the configuration now.
vfs.impl/invalid-decorator.error="{0}" is not a valid decorator. It has to extend "DecoratedFileObject" and must provide a single argument constructor which takes a "FileObject"
vfs.impl/temp-dir.debug=Using "{0}" as temporary files store.

# StandardFileSystemManager
vfs.impl/find-config-file.error=Could not find VFS configuration resource "{0}".
vfs.impl/load-config.error=Could not load VFS configuration from "{0}".
vfs.impl/create-provider.error=Could not create file provider of class "{0}".
vfs.impl/create-files-cache.error=Could not create files-cache implementation of class "{0}".
vfs.impl/create-client-factory.error=Could not create client factory of class "{0}".
vfs.impl/skipping-provider.debug=Skipping provider "{0}" because required class "{1}" is not available.
vfs.impl/skipping-provider-scheme.debug=Skipping provider "{0}" because required scheme "{1}" is not available.

# FileTypeMap
vfs.impl/multiple-schemes.error=This file requires multiple schemes. Use getSchemes() instead.

# VFSClassLoader
vfs.impl/pkg-sealing-unsealed=Trying to seal package "{0}" that exists as unsealed.
vfs.impl/pkg-sealed-other-url=Package "{0}" exists and is sealed with other URL.

# VirtualFileSystem
vfs.impl/nested-junction.error=Attempting to create a nested junction at "{0}".  Nested junctions are not supported.
vfs.impl/create-junction.error=Could not create a junction at "{0}".

# SoftRefFilesCache
vfs.impl/SoftRefReleaseThread-interrupt.info=SoftRefFilesCache - Release Thread interrupted.
vfs.impl/SoftRefReleaseThread-already-running.warn=SoftRefFilesCache - Release Thread already running.

# Local Provider
vfs.provider.local/get-type.error=Could not determine the type of "{0}".
vfs.provider.local/delete-file.error=Could not delete "{0}".
vfs.provider.local/rename-file.error=Could not rename file "{0}" to "{1}".
vfs.provider.local/create-folder.error=Could not create directory "{0}".
vfs.provider.local/not-absolute-file-name.error=URI "{0}" is not an absolute file name.
vfs.provider.local/missing-share-name.error=Share name missing from UNC file name "{0}".

# Resource Provider
vfs.provider.res/not-valid-resource-location.error=URI "{0}" is not a valid resource location.

# Temp Provider
vfs.provider.temp/get-type.error=Could not determine the type of "{0}".
vfs.provider.temp/delete-file.error=Could not delete "{0}".
vfs.provider.temp/rename-file.error=Could not rename file "{0}" to "{1}".
vfs.provider.temp/create-folder.error=Could not create directory "{0}".
vfs.provider.temp/not-absolute-file-name.error=URI "{0}" is not an absolute file name.
vfs.provider.temp/missing-share-name.error=Share name missing from UNC file name "{0}".

# SMB Provider
vfs.provider.smb/missing-share-name.error=The share name is missing from URI "{0}".
vfs.provider.smb/get-type.error=Could not detemine the type of "{0}".

# Zip Provider
vfs.provider.zip/open-zip-file.error=Could not open Zip file "{0}".
vfs.provider.zip/close-zip-file.error=Could not close Zip file "{0}".

# Bzip2 Provider
vfs.provider.bzip2/not-a-bzip2-file.error=File "{0}" is not bzip2 compressed.

# JarFileSystem
vfs.provider.jar/open-jar-file.error=Could not open Jar file "{0}".

# JarURLConnectionImpl
vfs.provider.jar/jar-file-no-access.error=JarURLConnections in VFS does not give access to the JarFile.
vfs.provider.jar/jar-entry-no-access.error=JarURLConnections in VFS does not give access to the JarEntry.

# FTP Provider
vfs.provider.ftp.wrapper/change-work-directory-back.error=Could not change back to work directory "{0}".
vfs.provider.ftp/change-work-directory.error=Could not change to work directory "{0}".
vfs.provider.ftp/close-connection.error=Could not close connection to FTP server.
vfs.provider.ftp/connect-rejected.error=Connection to FTP server on "{0}" rejected.
vfs.provider.ftp/connect.error=Could not connect to FTP server on "{0}".
vfs.provider.ftp/create-folder.error=Could not create FTP directory "{0}".
vfs.provider.ftp/delete-file.error=Could not delete FTP file "{0}".
vfs.provider.ftp/finish-get.error=Could not get FTP file "{0}".
vfs.provider.ftp/finish-put.error=Could not put FTP file "{0}".
vfs.provider.ftp/get-type.error=Could not determine the file type of "{0}".
vfs.provider.ftp/input-error.debug=Cant open input connection for file "{0}". Reason: "{1}".
vfs.provider.ftp/invalid-directory-entry.debug=Invalid directory entry at line "{0}" (directory "{1}").
vfs.provider.ftp/login.error=Could not login to FTP server on "{0}" as user "{1}".
vfs.provider.ftp/output-error.debug=Cant open output connection for file "{0}". Reason: "{1}".
vfs.provider.ftp/rename-file.error=Could not rename FTP file "{0}" to "{1}".
vfs.provider.ftp/set-file-type.error=Could not set the file type to "{0}".

# FTPS Provider
vfs.provider.ftps/data-channel.level=Failed to setup secure data channel level "{0}".

# SFTP Provider
vfs.provider.sftp/change-work-directory-back.error=Could not change back to work directory "{0}".
vfs.provider.sftp/change-work-directory.error=Could not change to work directory "{0}".
vfs.provider.sftp/config-sshdir.error=SSH-Folder "{0}" non existent or not a folder.
vfs.provider.sftp/connect.error=Could not connect to SFTP server at "{0}".
vfs.provider.sftp/create-folder.error=Folder creation failed with unknown error.
vfs.provider.sftp/delete.error=Delete failed with unknown error.
vfs.provider.sftp/filename-encoding.error=Could not change to file name encoding "{0}"
vfs.provider.sftp/get-file.error=Read file contents failed with unknown error.
vfs.provider.sftp/known-hosts.error=Error during processing known-hosts file "{0}".
vfs.provider.sftp/list-children.error=List folder contents failed with unknown error.
vfs.provider.sftp/load-private-key.error=Could not load private key from "{0}".
vfs.provider.sftp/put-file.error=Write file contents failed with unknown error.
vfs.provider.sftp/StrictHostKeyChecking-arg.error=Illegal argument "{0}" hostKeyChecking can only be "ask", "yes" or "no"
vfs.provider.sftp/unknown-modtime.error=Last modification time not fetched.
vfs.provider.sftp/unknown-permissions.error=File permissions not fetched.
vfs.provider.sftp/unknown-size.error=File size not fetched.
vfs.provider.sftp/load-openssh-config.error=Could not load openssh config.

# URL Provider
vfs.provider.url/badly-formed-uri.error=Badly formed URI "{0}".

# Http Provider
vfs.provider.http/get.error=GET method failed for "{0}" with HTTP status {1}.
vfs.provider.http/head.error=HEAD method failed for "{0}" with HTTP status {1}.
vfs.provider.http/last-modified.error=No Last-Modified header in HTTP response.
vfs.provider.http/get-range.error=GET method failed for "{0}" range "{1}" with HTTP status {2}.
vfs.provider.http/connect.error=Could not connect to HTTP server on "{0}".

# WebDAV Provider
vfs.provider.webdav/write-file.error=Write to file failed with message: "{0}".
vfs.provider.webdav/list-children.error=List child resources failed with message: "{0}".
vfs.provider.webdav/create-collection.error=Create collection failed with message: "{0}".
vfs.provider.webdav/delete-file.error=Delete file failed with message: "{0}".
vfs.provider.webdav/create-client.error=Could not create client for server "{0}".
vfs.provider.webdav/rename-file.error=Rename file failed with message: "{0}".
vfs.provider.webdav/get-attributes.error=Could not get attributes for: "{0}".
vfs.provider.webdav/set-attributes.error=Could not set property "{1}" for: "{0}".
vfs.provider.webdav/get-property.error=Could not get property for: "{0}", name="{1}", type="{2}", nameSet="{3}", addEncoding="{4}".

# Tar
vfs.provider.tar/open-tar-file.error=Could not open Tar file "{0}".
vfs.provider.tar/close-tar-file.error=Could not close Tar file "{0}".

# Ant tasks
vfs.tasks/sync.no-destination.error=No destination file or directory specified.
vfs.tasks/sync.too-many-destinations.error=Cannot specify both a destination file and a destination directory.
vfs.tasks/sync.no-source-files.warn=No source files specified.
vfs.tasks/sync.no-source-file.error=No source file specified.
vfs.tasks/sync.too-many-source-files.error=Too many source files specified.
vfs.tasks/sync.source-not-file.error=Source file "{0}" is not a file, or does not exist.
vfs.tasks/sync.src-file-no-exist.warn=Source file "{0}" does not exist.
vfs.tasks/sync.duplicate-source-files.warn=Multiple source files for destination file "{0}".
vfs.tasks/delete.no-source-files.error=No files to delete specified.
vfs.tasks/mkdir.create-folder.info=Creating directory "{0}".

# Selectors
vfs.selectors/filefilter.missing.error=Configure a fileFilter or override accept().

# Utils
vfs.util/find-abstract-file-object.error=Object "{0}" did not extend from AbstractFileObject.
vfs.util/missing-capability.error=The Filesystem does not provide the required capability "{0}".
