###############################################################################
# Copyright (c) 2007, 2018 IBM Corporation and others.
#
# This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
# which accompanies this distribution, and is available at
# https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
artifact_not_found=Artifact not found: {0}.
available_already_in=The artifact is already available in the repository {0}.
no_location=No location for {0}.
downloading=Downloading {0}
error_closing_stream=Error closing the output stream for {0} on repository {1}.

io_failedRead=Unable to read repository at {0}.
io_parseError=Error parsing simple artifact repository.
io_incompatibleVersion=Simple artifact repository has incompatible version {0}; expected {1}.
io_invalidLocation=Invalid repository location: {0}.
mirroring=Mirroring:
io_failedWrite=Error occurred while writing repository at {0}.

repoFailedWrite=Unable to write to repository: {0}.

repoMan_internalError=Internal error.

SignatureVerification_failedRead=Error reading signed content:
SignatureVerification_invalidContent=Invalid content:
SignatureVerification_invalidFileContent=File has invalid content:
SignatureVerifier_OutOfMemory=Out of memory: Cannot verify signed content.

sar_downloading=Download {0} artifacts
sar_downloadJobName=Install download
sar_failedMkdir=Failed to create directory {0}.
sar_reportStatus=Problems downloading artifact: {0}.

mirror_alreadyExists=Artifact: {0} already exists in repository: {1}.

message_artifactsFromChildRepos=Messages while reading artifacts from child repositories
message_problemReadingArtifact=Problems while reading artifacts from {0}

exception_comparatorNotFound = The Artifact Comparator {0} was not found. Available artifact comparators: {1}.
exception_noComparators = No Artifact Comparators are available.
MirrorLog_Console_Log=Logging to the console instead.
MirrorLog_Exception_Occurred=An exception occurred while writing to the log:
MirrorRequest_multipleDownloadProblems=Multiple problems occurred while downloading.
MirrorRequest_transferFailed=Failed to transfer artifact {0}.

exception_unsupportedAddToComposite = Cannot add descriptors to a composite repository.
exception_unsupportedGetOutputStream=Cannot write artifacts to a composite repository.
exception_unsupportedRemoveFromComposite = Cannot remove descriptors from a composite repository.

calculateChecksum_file=Calculating checksums for file {0}.
calculateChecksum_ok=Calculated checksum using id={0} algorithm={1} provider={2}: {3}.
calculateChecksum_error=Error calculating checksum using id={0} algorithm={1} provider={2}.
calculateChecksum_providerError=Checksum provider id={0} algorithm={1} provider={2} error.

exception_unableToCreateParentDir = Unable to create parent directory.
folder_artifact_not_file_repo=Artifact {0} is a folder but the repository is an archive or remote location.
retryRequest=Download of {0} failed on repository {1}. Retrying. 
error_copying_local_file=An error occurred copying file {0}.