1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- /*
- * Copyright (C) 2015, Matthias Sohn <matthias.sohn@sap.com> and others
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Distribution License v. 1.0 which is available at
- * https://www.eclipse.org/org/documents/edl-v10.php.
- *
- * SPDX-License-Identifier: BSD-3-Clause
- */
- package org.eclipse.jgit.lfs.test;
-
- import static java.nio.charset.StandardCharsets.UTF_8;
-
- import java.io.BufferedInputStream;
- import java.io.FileNotFoundException;
- import java.io.IOException;
- import java.io.InputStream;
- import java.nio.file.Files;
- import java.nio.file.Path;
- import java.security.MessageDigest;
-
- import org.eclipse.jgit.lfs.lib.Constants;
- import org.eclipse.jgit.lfs.lib.LongObjectId;
-
- public class LongObjectIdTestUtils {
-
- /**
- * Create id as hash of the given string.
- *
- * @param s
- * the string to hash
- * @return id calculated by hashing string
- */
- public static LongObjectId hash(String s) {
- MessageDigest md = Constants.newMessageDigest();
- md.update(s.getBytes(UTF_8));
- return LongObjectId.fromRaw(md.digest());
- }
-
- /**
- * Create id as hash of a file content
- *
- * @param file
- * the file to hash
- * @return id calculated by hashing file content
- * @throws FileNotFoundException
- * if file doesn't exist
- * @throws IOException
- */
- public static LongObjectId hash(Path file)
- throws FileNotFoundException, IOException {
- MessageDigest md = Constants.newMessageDigest();
- try (InputStream is = new BufferedInputStream(
- Files.newInputStream(file))) {
- final byte[] buffer = new byte[4096];
- for (int read = 0; (read = is.read(buffer)) != -1;) {
- md.update(buffer, 0, read);
- }
- }
- return LongObjectId.fromRaw(md.digest());
- }
- }
|