All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.liferay.jenkins.results.parser.scancode.ScanCodeS3ObjectFactory Maven / Gradle / Ivy

The newest version!
/**
 * SPDX-FileCopyrightText: (c) 2024 Liferay, Inc. https://liferay.com
 * SPDX-License-Identifier: LGPL-2.1-or-later OR LicenseRef-Liferay-DXP-EULA-2.0.0-2023-06
 */

package com.liferay.jenkins.results.parser.scancode;

import com.google.cloud.storage.Blob;

import com.liferay.jenkins.results.parser.JenkinsResultsParserUtil;

import java.util.HashMap;
import java.util.Map;

/**
 * @author Brittney Nguyen
 */
public class ScanCodeS3ObjectFactory {

	public static ScanCodeS3Object newScanCodeS3Object(
		Blob blob, ScanCodeS3Bucket scanCodeS3Bucket) {

		if (blob == null) {
			return null;
		}

		String mapKey = JenkinsResultsParserUtil.combine(
			scanCodeS3Bucket.getName(), "/", blob.getName());

		if (_scanCodeS3Objects.containsKey(mapKey)) {
			return _scanCodeS3Objects.get(mapKey);
		}

		ScanCodeS3Object scanCodeS3Object = new ScanCodeS3Object(
			blob, scanCodeS3Bucket);

		_scanCodeS3Objects.put(mapKey, scanCodeS3Object);

		return scanCodeS3Object;
	}

	private static final Map _scanCodeS3Objects =
		new HashMap<>();

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy