/**
   * This returns the label text for the adapted class.
   * <!-- begin-user-doc
   * -->
   * <!-- end-user-doc -->
   *
   * @generated NOT
   * @param object the object to be described
   * @return the description of the given object
   */
  @Override
  public String getText(Object object) {
    if (object instanceof CreateDeleteOperation) {
      CreateDeleteOperation op = (CreateDeleteOperation) object;
      EObject modelElement = op.getModelElement();
      int childrenCount = ModelUtil.getAllContainedModelElements(modelElement, false).size();
      String description;

      StringBuilder stringBuilder = new StringBuilder();
      stringBuilder.append(modelElement.eClass().getName());
      stringBuilder.append(getModelElementName(op.getModelElementId()));
      String elementClassAndName = stringBuilder.toString();
      if (op.isDelete()) {
        description = "Deleted " + elementClassAndName;
      } else {
        description = "Created " + elementClassAndName;
      }
      if (childrenCount > 0) {
        description += " including " + childrenCount + " sibling(s)";
      }

      EList<ReferenceOperation> subOperations = op.getSubOperations();
      int subOperationCount = subOperations.size();
      if (op.isDelete() && subOperationCount > 0) {
        ReferenceOperation referenceOperation = subOperations.get(subOperationCount - 1);
        if (referenceOperation.getContainmentType().equals(ContainmentType.CONTAINMENT)) {
          description +=
              " from its parent "
                  + getModelElementClassAndName(referenceOperation.getModelElementId());
        }
      }
      return description;
    }
    return super.getText(object);
  }
 /**
  * @see
  *     org.eclipse.emf.emfstore.server.model.versioning.operations.provider.AbstractOperationItemProvider#getChildren(java.lang.Object)
  */
 @Override
 public Collection<?> getChildren(Object object) {
   if (object instanceof CreateDeleteOperation) {
     CreateDeleteOperation operation = (CreateDeleteOperation) object;
     ArrayList<Object> ret = new ArrayList<Object>();
     ret.add(operation.getModelElementId());
     List<ReferenceOperation> subOps = operation.getSubOperations();
     if (subOps.size() > 0) {
       OperationGroup operationGroup = OperationsFactory.eINSTANCE.createOperationGroup();
       if (operation.isDelete()) {
         operationGroup.setName("Deleted Cross-References");
       } else {
         operationGroup.setName("Created Cross-References");
       }
       operationGroup.getOperations().addAll(subOps);
       ret.add(operationGroup);
     }
     return ret;
   }
   return super.getChildren(object);
 }