/* * Copyright (c) 2013-2014 EMC Corporation * All Rights Reserved */ package com.emc.storageos.svcs.errorhandling.resources; import com.emc.storageos.svcs.errorhandling.annotations.DeclareServiceCode; import com.emc.storageos.svcs.errorhandling.annotations.MessageBundle; import java.net.URI; /** * This interface holds all the methods used to create an error condition that * will be associated with an HTTP status of Service Unavailable (503) * <p/> * Remember to add the English message associated to the method in ServiceUnavailableExceptions.properties and use the annotation * {@link DeclareServiceCode} to set the service code associated to this error condition. You may need to create a new service code if there * is no an existing one suitable for your error condition. * <p/> * For more information or to see an example, check the Developers Guide section in the Error Handling Wiki page: * http://confluence.lab.voyence.com/display/OS/Error+Handling+Framework+and+Exceptions+in+ViPR */ @MessageBundle public interface ServiceUnavailableExceptions { // Dummy used for testing @DeclareServiceCode(ServiceCode.API_SERVICE_UNAVAILABLE) ServiceUnavailableException dummy(); @DeclareServiceCode(ServiceCode.API_SERVICE_UNAVAILABLE) public ServiceUnavailableException cannotDeactivateStorageSystemWhileInDiscover(URI id); @DeclareServiceCode(ServiceCode.CONTROLLER_SERVICE_NOT_AVALIABLE) public ServiceUnavailableException controllerServiceUnavailable(); @DeclareServiceCode(ServiceCode.SYS_CLUSTER_STATE_NOT_STABLE) public ServiceUnavailableException clusterStateNotStable(); @DeclareServiceCode(ServiceCode.SYS_CLUSTER_STATE_NOT_STABLE) public ServiceUnavailableException siteClusterStateNotStable(String siteName, String state); @DeclareServiceCode(ServiceCode.SYS_SERVICE_BUSY) public ServiceUnavailableException logServiceIsBusy(); @DeclareServiceCode(ServiceCode.SYS_SERVICE_BUSY) public ServiceUnavailableException sendEventBusy(); @DeclareServiceCode(ServiceCode.API_VERSION_OF_IMAGE_UNKNOWN_SO_FAR) public ServiceUnavailableException versionOfTheImageIsUnknownSoFar(); @DeclareServiceCode(ServiceCode.SYS_SERVICE_BUSY) public ServiceUnavailableException postLicenseBusy(); @DeclareServiceCode(ServiceCode.SYS_SERVICE_BUSY) public ServiceUnavailableException dataNodesNotFound(); @DeclareServiceCode(ServiceCode.OBJ_SYSTABLE_NOT_CREATED_YET) public ServiceUnavailableException objSystemNotInitializedYet(); @DeclareServiceCode(ServiceCode.SYS_CLUSTER_STATE_NOT_STABLE) public ServiceUnavailableException vdcNotStable(String vdcId); @DeclareServiceCode(ServiceCode.SYS_CLUSTER_STATE_NOT_STABLE) public ServiceUnavailableException vdcOngingJob(String vdcId, String state); @DeclareServiceCode(ServiceCode.SYS_CLUSTER_STATE_NOT_STABLE) public ServiceUnavailableException siteOnGoingJob(String name, String state); @DeclareServiceCode(ServiceCode.SYS_CLUSTER_STATE_NOT_STABLE) public ServiceUnavailableException sitePaused(String name); }