package org.carlspring.strongbox.artifact.coordinates;
import java.util.LinkedHashMap;
import java.util.Map;
import org.carlspring.strongbox.data.domain.GenericEntity;
/**
* @author carlspring
*/
public abstract class AbstractArtifactCoordinates
extends GenericEntity
implements ArtifactCoordinates
{
private Map<String, String> coordinates = new LinkedHashMap<>();
public AbstractArtifactCoordinates()
{
}
public AbstractArtifactCoordinates(Map<String, String> coordinates)
{
this.coordinates = coordinates;
}
@Override
public String getUuid()
{
return toPath();
}
public void defineCoordinates(String... coordinates)
{
for (String coordinate : coordinates)
{
this.coordinates.put(coordinate, null);
}
}
@Override
public void dump()
{
for (String coordinateName : coordinates.keySet())
{
String coordinateValue = coordinates.get(coordinateName);
System.out.println(coordinateName + " : " + coordinateValue);
}
}
public void defineCoordinate(String coordinate)
{
coordinates.put(coordinate, null);
}
public String getCoordinate(String coordinate)
{
return coordinates.get(coordinate);
}
public String setCoordinate(String coordinate,
String value)
{
return coordinates.put(coordinate, value);
}
public Map<String, String> getCoordinates()
{
return coordinates;
}
public void setCoordinates(Map<String, String> coordinates)
{
this.coordinates = coordinates;
}
@Override
public String toString()
{
return toPath();
}
}