package org.agnitas.emm.core.commons.uid.builder; import org.agnitas.emm.core.commons.uid.ExtensibleUID; import org.agnitas.emm.core.commons.uid.builder.impl.exception.RequiredInformationMissingException; import org.agnitas.emm.core.commons.uid.builder.impl.exception.UIDStringBuilderException; /** * Interface for implementations to convert a ExtensibleUID object to a String representation. * * @author md */ public interface ExtensibleUIDStringBuilder { /** * Convert instance of ExtensibleUID to String. * * @param extensibleUID UID to convert * * @return String representation of UID * * @throws RequiredInformationMissingException when required informations are not available * @throws UIDStringBuilderException on errors during conversion */ public String buildUIDString( ExtensibleUID extensibleUID) throws RequiredInformationMissingException, UIDStringBuilderException; /** * Returns the newest (highest) UID version, that can be handled by the string builder. * * @return newest UID version */ public int getNewestHandledUIDVersion(); }