fn base_file_path(hash: &Hash, repo_dir: &Path) -> PathBuf {
    let mut buffer: PathBuf = PathBuf::from(repo_dir);
    buffer.push(hash.algorithm.hash_algorithm_to_str());
    buffer.push(encode_bytes_as_file_name(&hash.bytes));
    buffer
}
// The base file path (no extension on the file name) that will correspond to this hash.
// The structure of the path is
// repo_root_dir/hash_algorithm/hash
// This consists of the artifact repository root directory, a directory whose name is the
// algorithm used to compute the hash and a file name that is the hash, encoded as hex
// (base64 is more compact, but hex is easier for troubleshooting). For example
// pyrsia-artifacts/SHA256/680fade3184f20557aa2bbf4432386eb79836902a1e5aea1ff077e323e6cab34
// TODO To support nodes that will store many files, we need a scheme that will start separating files by subdirectories under the hash algorithm directory based on the first n bytes of the hash value.
The base file path (no extension on the file name) that will correspond to this hash.
The structure of the path is
repo_root_dir/hash_algorithm/hash
This consists of the artifact repository root directory, a directory whose name is the
algorithm used to compute the hash and a file name that is the hash, encoded as hex
(base64 is more compact, but hex is easier for troubleshooting).
The base file path ( no extension on the file name ) that will correspond to this hash . The structure of the path is repo_root_dir / hash_algorithm / hash This consists of the artifact repository root directory a directory whose name is the algorithm used to compute the hash and a file name that is the hash encoded as hex ( base64 is more compact but hex is easier for troubleshooting ) .
fn base_file_path(hash: &Hash, repo_dir: &Path) -> PathBuf {
    let mut buffer: PathBuf = PathBuf::from(repo_dir);
    buffer.push(hash.algorithm.hash_algorithm_to_str());
    buffer.push(encode_bytes_as_file_name(&hash.bytes));
    buffer
}
fn base_file_path ( hash : & Hash , repo_dir : & Path ) -> PathBuf { let mut buffer : PathBuf = PathBuf :: from ( repo_dir ) ; buffer . push ( hash . algorithm . hash_algorithm_to_str ( ) ) ; buffer . push ( encode_bytes_as_file_name ( & hash . bytes ) ) ; buffer }
The base file path (no extension on the file name) that will correspond to this hash.
The base file path ( no extension on the file name ) that will correspond to this hash .
hash
&Hash
repo_dir
&Path
hash
&Hash
repo_dir
&Path