1 package uk.nhs.interoperability.capabilities; 2 3 import com.xmlsolutions.annotation.Requirement; 4 5 /** 6 * Interface used by ITK message recipients to determine 7 * whether or not the received message is a supported 8 * profile, is deprecated or is not supported.<br/><br/> 9 * 10 * Note: This interface is a candidate for migration to the 11 * itk-api project in due course 12 * 13 * @author Michael Odling-Smee 14 * @author Nicholas Jones 15 * @since version 0.1 16 */ 17 public interface ITKProfileManager { 18 19 /** 20 * The profileId is recognised and can be 21 * processed by the recipient 22 */ 23 public static final int ACCEPTED = 10; 24 25 /** 26 * The profileId is either unknown or is 27 * not accepted by the recipient 28 */ 29 public static final int NOT_SUPPORTED = 20; 30 31 /** 32 * The profileId is recognised and can be 33 * processed by the recipient - however support 34 * for this profile is deprecated and is likely 35 * to be removed in the future 36 */ 37 public static final int DEPRECATED = 30; 38 39 /** 40 * Determines whether the provided <code>profileId</code> 41 * is supported. 42 * 43 * @param profileId the profileId e.g. 44 * <code>urn:nhs-en:profile:ambulanceServicePatientReport-v1-0</code> 45 * @return an in representing the level of support for this profileId. 46 * Permitted values of {@link #ACCEPTED}, {@link #NOT_SUPPORTED} or {@link #DEPRECATED} 47 */ 48 @Requirement(traceTo={"COR-DEH-09"}, status="abstract") 49 public int getProfileSupportLevel(String profileId); 50 51 }