/**
   * Convenience method to construct a new CoreException indicating that an metamodel element
   * itialization failed.
   *
   * @param nsURI the namespace URI
   * @param reason the localized reason why the metamodel element was not initialized
   * @return the new CoreException
   */
  public static CoreException getMetamodelInitException(String nsURI, String reason) {

    return new CoreException(
        new Status(
            IStatus.WARNING,
            EMFTypePlugin.getPluginId(),
            METAMODEL_NOT_INITED,
            EMFTypeCoreMessages.bind(EMFTypeCoreMessages.metamodel_not_init_WARN_, nsURI, reason),
            null));
  }
  /**
   * Convenience method to construct a new CoreException indicating that an element initialization
   * failed.
   *
   * @param elementId the element ID
   * @param reason the localized reason why the element was not initialized
   * @param e an exception, if the failure was due to an exception
   * @return the new CoreException
   */
  public static CoreException getInitException(String elementId, String reason, Exception e) {

    return new CoreException(
        new Status(
            IStatus.WARNING,
            EMFTypePlugin.getPluginId(),
            ELEMENT_NOT_INITED,
            EMFTypeCoreMessages.bind(EMFTypeCoreMessages.elment_not_init_WARN_, elementId, reason),
            e));
  }
  /**
   * Convenience method to construct a new CoreException indicating that an element type failed to
   * be created.
   *
   * @param typeId the element type ID
   * @param reason the localized reason why the element type was not initialized
   * @param e an exception, if the failure was due to an exception
   * @return the new CoreException
   */
  public static CoreException getTypeInitException(String typeId, String reason, Exception e) {

    return new CoreException(
        new Status(
            IStatus.WARNING,
            EMFTypePlugin.getPluginId(),
            TYPE_NOT_INITED,
            EMFTypeCoreMessages.bind(EMFTypeCoreMessages.type_not_init_WARN_, typeId, reason),
            e));
  }
  /**
   * Convenience method to construct a new CoreException indicating that an element type factory
   * initialization failed.
   *
   * @param factoryName the factory name
   * @param reason the localized reason why the element type factory was not initialized
   * @return the new CoreException
   */
  public static CoreException getContextInitException(String contextId, String reason) {

    return new CoreException(
        new Status(
            IStatus.WARNING,
            EMFTypePlugin.getPluginId(),
            CONTEXT_NOT_INITED,
            EMFTypeCoreMessages.bind(
                EMFTypeCoreMessages.clientContext_not_init_WARN_, contextId, reason),
            null));
  }
  /**
   * Convenience method to construct a new CoreException indicating that an element type factory
   * initialization failed.
   *
   * @param factoryName the factory name
   * @param reason the localized reason why the element type factory was not initialized
   * @return the new CoreException
   */
  public static CoreException getFactoryInitException(String factoryName, String reason) {

    return new CoreException(
        new Status(
            IStatus.WARNING,
            EMFTypePlugin.getPluginId(),
            FACTORY_NOT_INITED,
            EMFTypeCoreMessages.bind(
                EMFTypeCoreMessages.elementTypeFactory_not_init_WARN_, factoryName, reason),
            null));
  }
  /**
   * Convenience method to construct a new CoreException indicating that an advice binding failed to
   * be created.
   *
   * @param adviceId the advice binding ID
   * @param reason the localized reason why the advice binding was not initialized
   * @return the new CoreException
   */
  public static CoreException getAdviceBindingInitException(String adviceId, String reason) {

    return new CoreException(
        new Status(
            IStatus.WARNING,
            EMFTypePlugin.getPluginId(),
            ADVICE_BINDING_NOT_INITED,
            EMFTypeCoreMessages.bind(
                EMFTypeCoreMessages.adviceBinding_not_init_WARN_, adviceId, reason),
            null));
  }