/**
   * {@inheritDoc}
   *
   * @see
   *     org.eclipse.emf.eef.runtime.api.component.IPropertiesEditionComponent#initPart(java.lang.Object,
   *     int, org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.resource.ResourceSet)
   */
  public void initPart(Object key, int kind, EObject elt, ResourceSet allResource) {
    setInitializing(true);
    if (editingPart != null && key == partKey) {
      editingPart.setContext(elt, allResource);

      final DomainClass domainClass = (DomainClass) elt;
      final DomainClassPropertiesEditionPart domainClassPart =
          (DomainClassPropertiesEditionPart) editingPart;
      // init values
      if (isAccessible(GraalViewsRepository.DomainClass.Properties.name))
        domainClassPart.setName(
            EEFConverterUtil.convertToString(EcorePackage.Literals.ESTRING, domainClass.getName()));

      if (isAccessible(GraalViewsRepository.DomainClass.Properties.superType)) {
        // init part
        superTypeSettings =
            new EObjectFlatComboSettings(
                domainClass, EnvironmentPackage.eINSTANCE.getStructuredType_Supertype());
        domainClassPart.initSuperType(superTypeSettings);
        // set the button mode
        domainClassPart.setSuperTypeButtonMode(ButtonsModeEnum.BROWSE);
      }
      if (isAccessible(GraalViewsRepository.DomainClass.Properties.description))
        domainClassPart.setDescription(
            EcoreUtil.convertToString(EcorePackage.Literals.ESTRING, domainClass.getDescription()));
      // init filters

      // init values for referenced views

      // init filters for referenced views

    }
    setInitializing(false);
  }
 /**
  * {@inheritDoc}
  *
  * @see
  *     org.eclipse.emf.eef.runtime.impl.components.StandardPropertiesEditionComponent#updateSemanticModel(org.eclipse.emf.eef.runtime.api.notify.IPropertiesEditionEvent)
  */
 public void updateSemanticModel(final IPropertiesEditionEvent event) {
   DomainClass domainClass = (DomainClass) semanticObject;
   if (GraalViewsRepository.DomainClass.Properties.name == event.getAffectedEditor()) {
     domainClass.setName(
         (java.lang.String)
             EEFConverterUtil.createFromString(
                 EcorePackage.Literals.ESTRING, (String) event.getNewValue()));
   }
   if (GraalViewsRepository.DomainClass.Properties.superType == event.getAffectedEditor()) {
     if (event.getKind() == PropertiesEditionEvent.SET) {
       superTypeSettings.setToReference((StructuredType) event.getNewValue());
     } else if (event.getKind() == PropertiesEditionEvent.ADD) {
       EReferencePropertiesEditionContext context =
           new EReferencePropertiesEditionContext(
               editingContext, this, superTypeSettings, editingContext.getAdapterFactory());
       PropertiesEditingProvider provider =
           (PropertiesEditingProvider)
               editingContext
                   .getAdapterFactory()
                   .adapt(semanticObject, PropertiesEditingProvider.class);
       if (provider != null) {
         PropertiesEditingPolicy policy = provider.getPolicy(context);
         if (policy instanceof CreateEditingPolicy) {
           policy.execute();
         }
       }
     }
   }
   if (GraalViewsRepository.DomainClass.Properties.description == event.getAffectedEditor()) {
     domainClass.setDescription(
         (java.lang.String)
             EEFConverterUtil.createFromString(
                 EcorePackage.Literals.ESTRING, (String) event.getNewValue()));
   }
 }