From 908af2065c39fe0cb144d6745ed75143677c79ef Mon Sep 17 00:00:00 2001 From: shubhamWaghmare-sap <57699330+shubhamWaghmare-sap@users.noreply.github.com> Date: Thu, 4 Jul 2024 23:13:30 +0530 Subject: [PATCH] Improve selective pull dialog with action description & support deletion (#271) --- .../model/agitpullmodifiedobjects.ecore | 23 +- .../model/agitpullmodifiedobjects.genmodel | 5 +- .../backend/internal/RepositoryService.java | 3 +- .../abapObjects/impl/AbapObjectImpl.java | 320 +++++++++--------- .../IAbapGitObject.java | 18 - .../IAgitpullmodifiedobjectsFactory.java | 6 +- .../IAgitpullmodifiedobjectsPackage.java | 156 ++++++--- .../IOverwriteObject.java | 69 ++++ .../IOverwriteObjects.java | 4 +- .../IPackageWarningObjects.java | 4 +- .../impl/AbapGitObjectImpl.java | 39 --- .../AgitpullmodifiedobjectsFactoryImpl.java | 8 +- .../AgitpullmodifiedobjectsPackageImpl.java | 73 +++- .../impl/OverwriteObjectImpl.java | 229 +++++++++++++ .../impl/OverwriteObjectsImpl.java | 10 +- .../impl/PackageWarningObjectsImpl.java | 10 +- ...AgitpullmodifiedobjectsAdapterFactory.java | 11 +- ...ullmodifiedobjectsResourceFactoryImpl.java | 1 - .../util/AgitpullmodifiedobjectsSwitch.java | 15 +- .../IRepositoryModifiedObjects.java | 4 +- .../RepositoryModifiedObjects.java | 8 +- .../adt/ui/internal/util/RepositoryUtil.java | 16 +- ...pGitWizardPageObjectsSelectionForPull.java | 115 +++++-- ...UnitPullModifiedObjectsContentHandler.java | 8 +- .../util/TestsUnitAbapGitPullService.java | 24 +- .../util/TestsUnitRepositoryUtil.java | 12 +- 26 files changed, 801 insertions(+), 390 deletions(-) delete mode 100644 org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAbapGitObject.java create mode 100644 org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IOverwriteObject.java delete mode 100644 org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AbapGitObjectImpl.java create mode 100644 org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/OverwriteObjectImpl.java diff --git a/org.abapgit.adt.backend/model/agitpullmodifiedobjects.ecore b/org.abapgit.adt.backend/model/agitpullmodifiedobjects.ecore index 0e1246e6..5c037864 100644 --- a/org.abapgit.adt.backend/model/agitpullmodifiedobjects.ecore +++ b/org.abapgit.adt.backend/model/agitpullmodifiedobjects.ecore @@ -72,7 +72,7 @@
+ eType="#//OverwriteObject" containment="true" resolveProxies="false">
@@ -86,7 +86,7 @@
+ eType="#//OverwriteObject" containment="true" resolveProxies="false">
@@ -94,5 +94,22 @@ - + + +
+
+ + + +
+
+ + + + +
+
+ + + diff --git a/org.abapgit.adt.backend/model/agitpullmodifiedobjects.genmodel b/org.abapgit.adt.backend/model/agitpullmodifiedobjects.genmodel index 90fb7e60..06308793 100644 --- a/org.abapgit.adt.backend/model/agitpullmodifiedobjects.genmodel +++ b/org.abapgit.adt.backend/model/agitpullmodifiedobjects.genmodel @@ -24,6 +24,9 @@ - + + + + diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/internal/RepositoryService.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/internal/RepositoryService.java index b299be82..8736b73d 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/internal/RepositoryService.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/internal/RepositoryService.java @@ -22,6 +22,7 @@ import com.sap.adt.communication.resources.AdtRestResourceFactory; import com.sap.adt.communication.resources.IRestResource; import com.sap.adt.communication.resources.UriBuilder; +import com.sap.adt.compatibility.exceptions.OutDatedClientException; import com.sap.adt.compatibility.filter.AdtCompatibleRestResourceFilterFactory; import com.sap.adt.compatibility.filter.IAdtCompatibleRestResourceFilter; import com.sap.adt.tools.core.model.atom.IAtomLink; @@ -265,7 +266,7 @@ public URI getURIFromAtomLink(IRepository repository, String relation) { @Override public IAbapGitPullModifiedObjects getModifiedObjects(IProgressMonitor monitor, IRepository currRepository, - String user, String password) { + String user, String password) throws OutDatedClientException { URI uriToModifiedObjects = getURIFromAtomLink(currRepository, IRepositoryService.RELATION_MODIFIED_OBJECTS); IHeaders headers = null; diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/abapObjects/impl/AbapObjectImpl.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/abapObjects/impl/AbapObjectImpl.java index eab34008..a8766d64 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/abapObjects/impl/AbapObjectImpl.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/abapObjects/impl/AbapObjectImpl.java @@ -14,20 +14,26 @@ import org.eclipse.emf.ecore.util.EObjectResolvingEList; /** - * - * An implementation of the model object 'Abap Object'. - * + * An implementation of the model object 'Abap + * Object'. *

* The following features are implemented: *

*
    - *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getType Type}
  • - *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getPackage Package}
  • - *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getName Name}
  • - *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getMsgType Msg Type}
  • - *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getMsgText Msg Text}
  • - *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getStatus Status}
  • - *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getAbapLogObjectChildren Abap Log Object Children}
  • + *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getType + * Type}
  • + *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getPackage + * Package}
  • + *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getName + * Name}
  • + *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getMsgType + * Msg Type}
  • + *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getMsgText + * Msg Text}
  • + *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getStatus + * Status}
  • + *
  • {@link org.abapgit.adt.backend.model.abapObjects.impl.AbapObjectImpl#getAbapLogObjectChildren + * Abap Log Object Children}
  • *
* * @generated @@ -35,8 +41,8 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAbapObject { /** * The default value of the '{@link #getType() Type}' attribute. - * - * + * + * * @see #getType() * @generated * @ordered @@ -45,8 +51,8 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba /** * The cached value of the '{@link #getType() Type}' attribute. - * - * + * + * * @see #getType() * @generated * @ordered @@ -54,9 +60,9 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba protected String type = TYPE_EDEFAULT; /** - * The default value of the '{@link #getPackage() Package}' attribute. - * - * + * The default value of the '{@link #getPackage() Package}' + * attribute. + * * @see #getPackage() * @generated * @ordered @@ -64,9 +70,9 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba protected static final String PACKAGE_EDEFAULT = null; /** - * The cached value of the '{@link #getPackage() Package}' attribute. - * - * + * The cached value of the '{@link #getPackage() Package}' + * attribute. + * * @see #getPackage() * @generated * @ordered @@ -75,8 +81,8 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba /** * The default value of the '{@link #getName() Name}' attribute. - * - * + * + * * @see #getName() * @generated * @ordered @@ -85,8 +91,8 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba /** * The cached value of the '{@link #getName() Name}' attribute. - * - * + * + * * @see #getName() * @generated * @ordered @@ -94,9 +100,9 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba protected String name = NAME_EDEFAULT; /** - * The default value of the '{@link #getMsgType() Msg Type}' attribute. - * - * + * The default value of the '{@link #getMsgType() Msg Type}' + * attribute. + * * @see #getMsgType() * @generated * @ordered @@ -104,9 +110,9 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba protected static final String MSG_TYPE_EDEFAULT = null; /** - * The cached value of the '{@link #getMsgType() Msg Type}' attribute. - * - * + * The cached value of the '{@link #getMsgType() Msg Type}' + * attribute. + * * @see #getMsgType() * @generated * @ordered @@ -114,9 +120,9 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba protected String msgType = MSG_TYPE_EDEFAULT; /** - * The default value of the '{@link #getMsgText() Msg Text}' attribute. - * - * + * The default value of the '{@link #getMsgText() Msg Text}' + * attribute. + * * @see #getMsgText() * @generated * @ordered @@ -124,9 +130,9 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba protected static final String MSG_TEXT_EDEFAULT = null; /** - * The cached value of the '{@link #getMsgText() Msg Text}' attribute. - * - * + * The cached value of the '{@link #getMsgText() Msg Text}' + * attribute. + * * @see #getMsgText() * @generated * @ordered @@ -134,9 +140,9 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba protected String msgText = MSG_TEXT_EDEFAULT; /** - * The default value of the '{@link #getStatus() Status}' attribute. - * - * + * The default value of the '{@link #getStatus() Status}' + * attribute. + * * @see #getStatus() * @generated * @ordered @@ -145,8 +151,8 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba /** * The cached value of the '{@link #getStatus() Status}' attribute. - * - * + * + * * @see #getStatus() * @generated * @ordered @@ -154,9 +160,10 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba protected String status = STATUS_EDEFAULT; /** - * The cached value of the '{@link #getAbapLogObjectChildren() Abap Log Object Children}' reference list. - * - * + * The cached value of the '{@link #getAbapLogObjectChildren() Abap Log + * Object Children}' reference list. + * * @see #getAbapLogObjectChildren() * @generated * @ordered @@ -164,8 +171,8 @@ public class AbapObjectImpl extends MinimalEObjectImpl.Container implements IAba protected EList abapLogObjectChildren; /** - * - * + * + * * @generated */ protected AbapObjectImpl() { @@ -173,8 +180,8 @@ protected AbapObjectImpl() { } /** - * - * + * + * * @generated */ @Override @@ -183,8 +190,8 @@ protected EClass eStaticClass() { } /** - * - * + * + * * @generated */ @Override @@ -193,8 +200,8 @@ public String getType() { } /** - * - * + * + * * @generated */ @Override @@ -207,8 +214,8 @@ public void setType(String newType) { } /** - * - * + * + * * @generated */ @Override @@ -217,8 +224,8 @@ public String getPackage() { } /** - * - * + * + * * @generated */ @Override @@ -231,8 +238,8 @@ public void setPackage(String newPackage) { } /** - * - * + * + * * @generated */ @Override @@ -241,8 +248,8 @@ public String getName() { } /** - * - * + * + * * @generated */ @Override @@ -255,8 +262,8 @@ public void setName(String newName) { } /** - * - * + * + * * @generated */ @Override @@ -265,8 +272,8 @@ public String getMsgType() { } /** - * - * + * + * * @generated */ @Override @@ -279,8 +286,8 @@ public void setMsgType(String newMsgType) { } /** - * - * + * + * * @generated */ @Override @@ -289,8 +296,8 @@ public String getMsgText() { } /** - * - * + * + * * @generated */ @Override @@ -303,8 +310,8 @@ public void setMsgText(String newMsgText) { } /** - * - * + * + * * @generated */ @Override @@ -313,8 +320,8 @@ public String getStatus() { } /** - * - * + * + * * @generated */ @Override @@ -327,141 +334,142 @@ public void setStatus(String newStatus) { } /** - * - * + * + * * @generated */ @Override public EList getAbapLogObjectChildren() { if (this.abapLogObjectChildren == null) { - this.abapLogObjectChildren = new EObjectResolvingEList(IAbapObject.class, this, IAbapObjectsPackage.ABAP_OBJECT__ABAP_LOG_OBJECT_CHILDREN); + this.abapLogObjectChildren = new EObjectResolvingEList(IAbapObject.class, this, + IAbapObjectsPackage.ABAP_OBJECT__ABAP_LOG_OBJECT_CHILDREN); } return this.abapLogObjectChildren; } /** - * - * + * + * * @generated */ @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case IAbapObjectsPackage.ABAP_OBJECT__TYPE: - return getType(); - case IAbapObjectsPackage.ABAP_OBJECT__PACKAGE: - return getPackage(); - case IAbapObjectsPackage.ABAP_OBJECT__NAME: - return getName(); - case IAbapObjectsPackage.ABAP_OBJECT__MSG_TYPE: - return getMsgType(); - case IAbapObjectsPackage.ABAP_OBJECT__MSG_TEXT: - return getMsgText(); - case IAbapObjectsPackage.ABAP_OBJECT__STATUS: - return getStatus(); - case IAbapObjectsPackage.ABAP_OBJECT__ABAP_LOG_OBJECT_CHILDREN: - return getAbapLogObjectChildren(); + case IAbapObjectsPackage.ABAP_OBJECT__TYPE: + return getType(); + case IAbapObjectsPackage.ABAP_OBJECT__PACKAGE: + return getPackage(); + case IAbapObjectsPackage.ABAP_OBJECT__NAME: + return getName(); + case IAbapObjectsPackage.ABAP_OBJECT__MSG_TYPE: + return getMsgType(); + case IAbapObjectsPackage.ABAP_OBJECT__MSG_TEXT: + return getMsgText(); + case IAbapObjectsPackage.ABAP_OBJECT__STATUS: + return getStatus(); + case IAbapObjectsPackage.ABAP_OBJECT__ABAP_LOG_OBJECT_CHILDREN: + return getAbapLogObjectChildren(); } return super.eGet(featureID, resolve, coreType); } /** - * - * + * + * * @generated */ @SuppressWarnings("unchecked") @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case IAbapObjectsPackage.ABAP_OBJECT__TYPE: - setType((String)newValue); - return; - case IAbapObjectsPackage.ABAP_OBJECT__PACKAGE: - setPackage((String)newValue); - return; - case IAbapObjectsPackage.ABAP_OBJECT__NAME: - setName((String)newValue); - return; - case IAbapObjectsPackage.ABAP_OBJECT__MSG_TYPE: - setMsgType((String)newValue); - return; - case IAbapObjectsPackage.ABAP_OBJECT__MSG_TEXT: - setMsgText((String)newValue); - return; - case IAbapObjectsPackage.ABAP_OBJECT__STATUS: - setStatus((String)newValue); - return; - case IAbapObjectsPackage.ABAP_OBJECT__ABAP_LOG_OBJECT_CHILDREN: - getAbapLogObjectChildren().clear(); - getAbapLogObjectChildren().addAll((Collection)newValue); - return; + case IAbapObjectsPackage.ABAP_OBJECT__TYPE: + setType((String) newValue); + return; + case IAbapObjectsPackage.ABAP_OBJECT__PACKAGE: + setPackage((String) newValue); + return; + case IAbapObjectsPackage.ABAP_OBJECT__NAME: + setName((String) newValue); + return; + case IAbapObjectsPackage.ABAP_OBJECT__MSG_TYPE: + setMsgType((String) newValue); + return; + case IAbapObjectsPackage.ABAP_OBJECT__MSG_TEXT: + setMsgText((String) newValue); + return; + case IAbapObjectsPackage.ABAP_OBJECT__STATUS: + setStatus((String) newValue); + return; + case IAbapObjectsPackage.ABAP_OBJECT__ABAP_LOG_OBJECT_CHILDREN: + getAbapLogObjectChildren().clear(); + getAbapLogObjectChildren().addAll((Collection) newValue); + return; } super.eSet(featureID, newValue); } /** - * - * + * + * * @generated */ @Override public void eUnset(int featureID) { switch (featureID) { - case IAbapObjectsPackage.ABAP_OBJECT__TYPE: - setType(TYPE_EDEFAULT); - return; - case IAbapObjectsPackage.ABAP_OBJECT__PACKAGE: - setPackage(PACKAGE_EDEFAULT); - return; - case IAbapObjectsPackage.ABAP_OBJECT__NAME: - setName(NAME_EDEFAULT); - return; - case IAbapObjectsPackage.ABAP_OBJECT__MSG_TYPE: - setMsgType(MSG_TYPE_EDEFAULT); - return; - case IAbapObjectsPackage.ABAP_OBJECT__MSG_TEXT: - setMsgText(MSG_TEXT_EDEFAULT); - return; - case IAbapObjectsPackage.ABAP_OBJECT__STATUS: - setStatus(STATUS_EDEFAULT); - return; - case IAbapObjectsPackage.ABAP_OBJECT__ABAP_LOG_OBJECT_CHILDREN: - getAbapLogObjectChildren().clear(); - return; + case IAbapObjectsPackage.ABAP_OBJECT__TYPE: + setType(TYPE_EDEFAULT); + return; + case IAbapObjectsPackage.ABAP_OBJECT__PACKAGE: + setPackage(PACKAGE_EDEFAULT); + return; + case IAbapObjectsPackage.ABAP_OBJECT__NAME: + setName(NAME_EDEFAULT); + return; + case IAbapObjectsPackage.ABAP_OBJECT__MSG_TYPE: + setMsgType(MSG_TYPE_EDEFAULT); + return; + case IAbapObjectsPackage.ABAP_OBJECT__MSG_TEXT: + setMsgText(MSG_TEXT_EDEFAULT); + return; + case IAbapObjectsPackage.ABAP_OBJECT__STATUS: + setStatus(STATUS_EDEFAULT); + return; + case IAbapObjectsPackage.ABAP_OBJECT__ABAP_LOG_OBJECT_CHILDREN: + getAbapLogObjectChildren().clear(); + return; } super.eUnset(featureID); } /** - * - * + * + * * @generated */ @Override public boolean eIsSet(int featureID) { switch (featureID) { - case IAbapObjectsPackage.ABAP_OBJECT__TYPE: - return TYPE_EDEFAULT == null ? this.type != null : !TYPE_EDEFAULT.equals(this.type); - case IAbapObjectsPackage.ABAP_OBJECT__PACKAGE: - return PACKAGE_EDEFAULT == null ? this.package_ != null : !PACKAGE_EDEFAULT.equals(this.package_); - case IAbapObjectsPackage.ABAP_OBJECT__NAME: - return NAME_EDEFAULT == null ? this.name != null : !NAME_EDEFAULT.equals(this.name); - case IAbapObjectsPackage.ABAP_OBJECT__MSG_TYPE: - return MSG_TYPE_EDEFAULT == null ? this.msgType != null : !MSG_TYPE_EDEFAULT.equals(this.msgType); - case IAbapObjectsPackage.ABAP_OBJECT__MSG_TEXT: - return MSG_TEXT_EDEFAULT == null ? this.msgText != null : !MSG_TEXT_EDEFAULT.equals(this.msgText); - case IAbapObjectsPackage.ABAP_OBJECT__STATUS: - return STATUS_EDEFAULT == null ? this.status != null : !STATUS_EDEFAULT.equals(this.status); - case IAbapObjectsPackage.ABAP_OBJECT__ABAP_LOG_OBJECT_CHILDREN: - return this.abapLogObjectChildren != null && !this.abapLogObjectChildren.isEmpty(); + case IAbapObjectsPackage.ABAP_OBJECT__TYPE: + return TYPE_EDEFAULT == null ? this.type != null : !TYPE_EDEFAULT.equals(this.type); + case IAbapObjectsPackage.ABAP_OBJECT__PACKAGE: + return PACKAGE_EDEFAULT == null ? this.package_ != null : !PACKAGE_EDEFAULT.equals(this.package_); + case IAbapObjectsPackage.ABAP_OBJECT__NAME: + return NAME_EDEFAULT == null ? this.name != null : !NAME_EDEFAULT.equals(this.name); + case IAbapObjectsPackage.ABAP_OBJECT__MSG_TYPE: + return MSG_TYPE_EDEFAULT == null ? this.msgType != null : !MSG_TYPE_EDEFAULT.equals(this.msgType); + case IAbapObjectsPackage.ABAP_OBJECT__MSG_TEXT: + return MSG_TEXT_EDEFAULT == null ? this.msgText != null : !MSG_TEXT_EDEFAULT.equals(this.msgText); + case IAbapObjectsPackage.ABAP_OBJECT__STATUS: + return STATUS_EDEFAULT == null ? this.status != null : !STATUS_EDEFAULT.equals(this.status); + case IAbapObjectsPackage.ABAP_OBJECT__ABAP_LOG_OBJECT_CHILDREN: + return this.abapLogObjectChildren != null && !this.abapLogObjectChildren.isEmpty(); } return super.eIsSet(featureID); } /** - * - * + * + * * @generated */ @Override diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAbapGitObject.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAbapGitObject.java deleted file mode 100644 index 5d0c70ec..00000000 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAbapGitObject.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - */ -package org.abapgit.adt.backend.model.agitpullmodifiedobjects; - -import com.sap.adt.tools.core.model.adtcore.IAdtObjectReference; - -/** - * - * A representation of the model object 'Abap Git Object'. - * - * - * - * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsPackage#getAbapGitObject() - * @model - * @generated - */ -public interface IAbapGitObject extends IAdtObjectReference { -} // IAbapGitObject diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAgitpullmodifiedobjectsFactory.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAgitpullmodifiedobjectsFactory.java index 4152bcd6..159b09db 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAgitpullmodifiedobjectsFactory.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAgitpullmodifiedobjectsFactory.java @@ -58,13 +58,13 @@ public interface IAgitpullmodifiedobjectsFactory extends EFactory { IPackageWarningObjects createPackageWarningObjects(); /** - * Returns a new object of class 'Abap Git Object'. + * Returns a new object of class 'Overwrite Object'. * * - * @return a new object of class 'Abap Git Object'. + * @return a new object of class 'Overwrite Object'. * @generated */ - IAbapGitObject createAbapGitObject(); + IOverwriteObject createOverwriteObject(); /** * Returns the package supported by this factory. diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAgitpullmodifiedobjectsPackage.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAgitpullmodifiedobjectsPackage.java index bdf5dcb9..0bde4b12 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAgitpullmodifiedobjectsPackage.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IAgitpullmodifiedobjectsPackage.java @@ -22,81 +22,81 @@ * * * - * + * * Schema definition for * ABAP Development Tools core types - * + * * Author: SAP AG * Copyright (c) 2009 by * SAP AG - * - * + * + * * Schema definition for * ATOM links - * + * * Author: SAP AG * Copyright (c) 2011 by * SAP AG - * - * + * + * * See http://www.w3.org/XML/1998/namespace.html and * http://www.w3.org/TR/REC-xml for information about this namespace. - * + * * This schema document describes the XML namespace, in a form - * suitable for import by other schema documents. - * + * suitable for import by other schema documents. + * * Note that local names in this namespace are intended to be defined * only by the World Wide Web Consortium or its subgroups. The * following names are currently defined in this namespace and should * not be used with conflicting semantics by any Working Group, * specification, or document instance: - * + * * base (as an attribute name): denotes an attribute whose value * provides a URI to be used as the base for interpreting any * relative URIs in the scope of the element on which it * appears; its value is inherited. This name is reserved * by virtue of its definition in the XML Base specification. - * + * * lang (as an attribute name): denotes an attribute whose value * is a language code for the natural language of the content of * any element; its value is inherited. This name is reserved * by virtue of its definition in the XML specification. - * + * * space (as an attribute name): denotes an attribute whose * value is a keyword indicating what whitespace processing * discipline is intended for the content of the element; its * value is inherited. This name is reserved by virtue of its * definition in the XML specification. - * - * Father (in any context at all): denotes Jon Bosak, the chair of - * the original XML Working Group. This name is reserved by - * the following decision of the W3C XML Plenary and + * + * Father (in any context at all): denotes Jon Bosak, the chair of + * the original XML Working Group. This name is reserved by + * the following decision of the W3C XML Plenary and * XML Coordination groups: - * + * * In appreciation for his vision, leadership and dedication * the W3C XML Plenary on this 10th day of February, 2000 * reserves for Jon Bosak in perpetuity the XML name * xml:Father - * + * * This schema defines attributes and an attribute group * suitable for use by * schemas wishing to allow xml:base, xml:lang or xml:space attributes * on elements they define. - * + * * To enable this, such a schema must import this schema * for the XML namespace, e.g. as follows: * * . . . * - * + * * Subsequently, qualified reference to any of the attributes * or the group defined below will have the desired effect, e.g. - * + * * * . . . * - * + * * will define a type which will schema-validate an instance * element with any of those attributes * In keeping with the XML Schema WG's standard versioning @@ -111,7 +111,7 @@ * http://www.w3.org/2001/xml.xsd will change * accordingly; the version at * http://www.w3.org/2001/03/xml.xsd will not change. - * + * * * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsFactory * @model kind="package" @@ -334,16 +334,15 @@ public interface IAgitpullmodifiedobjectsPackage extends EPackage { */ int PACKAGE_WARNING_OBJECTS_OPERATION_COUNT = 0; - /** - * The meta object id for the '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.AbapGitObjectImpl Abap Git Object}' class. + * The meta object id for the '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.OverwriteObjectImpl Overwrite Object}' class. * * - * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.AbapGitObjectImpl - * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.AgitpullmodifiedobjectsPackageImpl#getAbapGitObject() + * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.OverwriteObjectImpl + * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.AgitpullmodifiedobjectsPackageImpl#getOverwriteObject() * @generated */ - int ABAP_GIT_OBJECT = 4; + int OVERWRITE_OBJECT = 4; /** * The feature id for the 'Extension' containment reference. @@ -352,7 +351,7 @@ public interface IAgitpullmodifiedobjectsPackage extends EPackage { * @generated * @ordered */ - int ABAP_GIT_OBJECT__EXTENSION = IAdtCorePackage.ADT_OBJECT_REFERENCE__EXTENSION; + int OVERWRITE_OBJECT__EXTENSION = IAdtCorePackage.ADT_OBJECT_REFERENCE__EXTENSION; /** * The feature id for the 'Description' attribute. @@ -361,7 +360,7 @@ public interface IAgitpullmodifiedobjectsPackage extends EPackage { * @generated * @ordered */ - int ABAP_GIT_OBJECT__DESCRIPTION = IAdtCorePackage.ADT_OBJECT_REFERENCE__DESCRIPTION; + int OVERWRITE_OBJECT__DESCRIPTION = IAdtCorePackage.ADT_OBJECT_REFERENCE__DESCRIPTION; /** * The feature id for the 'Name' attribute. @@ -370,7 +369,7 @@ public interface IAgitpullmodifiedobjectsPackage extends EPackage { * @generated * @ordered */ - int ABAP_GIT_OBJECT__NAME = IAdtCorePackage.ADT_OBJECT_REFERENCE__NAME; + int OVERWRITE_OBJECT__NAME = IAdtCorePackage.ADT_OBJECT_REFERENCE__NAME; /** * The feature id for the 'Package Name' attribute. @@ -379,7 +378,7 @@ public interface IAgitpullmodifiedobjectsPackage extends EPackage { * @generated * @ordered */ - int ABAP_GIT_OBJECT__PACKAGE_NAME = IAdtCorePackage.ADT_OBJECT_REFERENCE__PACKAGE_NAME; + int OVERWRITE_OBJECT__PACKAGE_NAME = IAdtCorePackage.ADT_OBJECT_REFERENCE__PACKAGE_NAME; /** * The feature id for the 'Parent Uri' attribute. @@ -388,7 +387,7 @@ public interface IAgitpullmodifiedobjectsPackage extends EPackage { * @generated * @ordered */ - int ABAP_GIT_OBJECT__PARENT_URI = IAdtCorePackage.ADT_OBJECT_REFERENCE__PARENT_URI; + int OVERWRITE_OBJECT__PARENT_URI = IAdtCorePackage.ADT_OBJECT_REFERENCE__PARENT_URI; /** * The feature id for the 'Type' attribute. @@ -397,7 +396,7 @@ public interface IAgitpullmodifiedobjectsPackage extends EPackage { * @generated * @ordered */ - int ABAP_GIT_OBJECT__TYPE = IAdtCorePackage.ADT_OBJECT_REFERENCE__TYPE; + int OVERWRITE_OBJECT__TYPE = IAdtCorePackage.ADT_OBJECT_REFERENCE__TYPE; /** * The feature id for the 'Uri' attribute. @@ -406,16 +405,43 @@ public interface IAgitpullmodifiedobjectsPackage extends EPackage { * @generated * @ordered */ - int ABAP_GIT_OBJECT__URI = IAdtCorePackage.ADT_OBJECT_REFERENCE__URI; + int OVERWRITE_OBJECT__URI = IAdtCorePackage.ADT_OBJECT_REFERENCE__URI; /** - * The number of structural features of the 'Abap Git Object' class. + * The feature id for the 'Action' attribute. * * * @generated * @ordered */ - int ABAP_GIT_OBJECT_FEATURE_COUNT = IAdtCorePackage.ADT_OBJECT_REFERENCE_FEATURE_COUNT + 0; + int OVERWRITE_OBJECT__ACTION = IAdtCorePackage.ADT_OBJECT_REFERENCE_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Action Description' attribute. + * + * + * @generated + * @ordered + */ + int OVERWRITE_OBJECT__ACTION_DESCRIPTION = IAdtCorePackage.ADT_OBJECT_REFERENCE_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Overwrite Object' class. + * + * + * @generated + * @ordered + */ + int OVERWRITE_OBJECT_FEATURE_COUNT = IAdtCorePackage.ADT_OBJECT_REFERENCE_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Overwrite Object' class. + * + * + * @generated + * @ordered + */ + int OVERWRITE_OBJECT_OPERATION_COUNT = 0; /** @@ -547,14 +573,36 @@ public interface IAgitpullmodifiedobjectsPackage extends EPackage { EReference getPackageWarningObjects_Abapgitobjects(); /** - * Returns the meta object for class '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject Abap Git Object}'. + * Returns the meta object for class '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject Overwrite Object}'. + * + * + * @return the meta object for class 'Overwrite Object'. + * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject + * @generated + */ + EClass getOverwriteObject(); + + /** + * Returns the meta object for the attribute '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject#getAction Action}'. + * + * + * @return the meta object for the attribute 'Action'. + * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject#getAction() + * @see #getOverwriteObject() + * @generated + */ + EAttribute getOverwriteObject_Action(); + + /** + * Returns the meta object for the attribute '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject#getActionDescription Action Description}'. * * - * @return the meta object for class 'Abap Git Object'. - * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject + * @return the meta object for the attribute 'Action Description'. + * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject#getActionDescription() + * @see #getOverwriteObject() * @generated */ - EClass getAbapGitObject(); + EAttribute getOverwriteObject_ActionDescription(); /** * Returns the factory that creates the instances of the model. @@ -684,14 +732,30 @@ interface Literals { EReference PACKAGE_WARNING_OBJECTS__ABAPGITOBJECTS = eINSTANCE.getPackageWarningObjects_Abapgitobjects(); /** - * The meta object literal for the '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.AbapGitObjectImpl Abap Git Object}' class. + * The meta object literal for the '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.OverwriteObjectImpl Overwrite Object}' class. + * + * + * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.OverwriteObjectImpl + * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.AgitpullmodifiedobjectsPackageImpl#getOverwriteObject() + * @generated + */ + EClass OVERWRITE_OBJECT = eINSTANCE.getOverwriteObject(); + + /** + * The meta object literal for the 'Action' attribute feature. + * + * + * @generated + */ + EAttribute OVERWRITE_OBJECT__ACTION = eINSTANCE.getOverwriteObject_Action(); + + /** + * The meta object literal for the 'Action Description' attribute feature. * * - * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.AbapGitObjectImpl - * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.AgitpullmodifiedobjectsPackageImpl#getAbapGitObject() * @generated */ - EClass ABAP_GIT_OBJECT = eINSTANCE.getAbapGitObject(); + EAttribute OVERWRITE_OBJECT__ACTION_DESCRIPTION = eINSTANCE.getOverwriteObject_ActionDescription(); } diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IOverwriteObject.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IOverwriteObject.java new file mode 100644 index 00000000..0febce7f --- /dev/null +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IOverwriteObject.java @@ -0,0 +1,69 @@ +/** + */ +package org.abapgit.adt.backend.model.agitpullmodifiedobjects; + +import com.sap.adt.tools.core.model.adtcore.IAdtObjectReference; + +/** + * + * A representation of the model object 'Overwrite Object'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject#getAction Action}
  • + *
  • {@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject#getActionDescription Action Description}
  • + *
+ * + * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsPackage#getOverwriteObject() + * @model extendedMetaData="kind='elementOnly' name='overwriteObject'" + * @generated + */ +public interface IOverwriteObject extends IAdtObjectReference { + /** + * Returns the value of the 'Action' attribute. + * + * + * @return the value of the 'Action' attribute. + * @see #setAction(String) + * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsPackage#getOverwriteObject_Action() + * @model extendedMetaData="kind='attribute' namespace='##targetNamespace'" + * @generated + */ + String getAction(); + + /** + * Sets the value of the '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject#getAction Action}' attribute. + * + * + * @param value the new value of the 'Action' attribute. + * @see #getAction() + * @generated + */ + void setAction(String value); + + /** + * Returns the value of the 'Action Description' attribute. + * + * + * @return the value of the 'Action Description' attribute. + * @see #setActionDescription(String) + * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsPackage#getOverwriteObject_ActionDescription() + * @model extendedMetaData="kind='attribute' namespace='##targetNamespace'" + * @generated + */ + String getActionDescription(); + + /** + * Sets the value of the '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject#getActionDescription Action Description}' attribute. + * + * + * @param value the new value of the 'Action Description' attribute. + * @see #getActionDescription() + * @generated + */ + void setActionDescription(String value); + +} // IOverwriteObject diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IOverwriteObjects.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IOverwriteObjects.java index 9f32ef5d..b135106b 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IOverwriteObjects.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IOverwriteObjects.java @@ -25,7 +25,7 @@ public interface IOverwriteObjects extends EObject { /** * Returns the value of the 'Abapgitobjects' containment reference list. - * The list contents are of type {@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject}. + * The list contents are of type {@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject}. * * * @return the value of the 'Abapgitobjects' containment reference list. @@ -34,6 +34,6 @@ public interface IOverwriteObjects extends EObject { * extendedMetaData="kind='element' namespace='##targetNamespace' name='abapgitobjects'" * @generated */ - EList getAbapgitobjects(); + EList getAbapgitobjects(); } // IOverwriteObjects diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IPackageWarningObjects.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IPackageWarningObjects.java index af218c21..27d7f62a 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IPackageWarningObjects.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/IPackageWarningObjects.java @@ -25,7 +25,7 @@ public interface IPackageWarningObjects extends EObject { /** * Returns the value of the 'Abapgitobjects' containment reference list. - * The list contents are of type {@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject}. + * The list contents are of type {@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject}. * * * @return the value of the 'Abapgitobjects' containment reference list. @@ -34,6 +34,6 @@ public interface IPackageWarningObjects extends EObject { * extendedMetaData="kind='element' namespace='##targetNamespace' name='abapgitobjects'" * @generated */ - EList getAbapgitobjects(); + EList getAbapgitobjects(); } // IPackageWarningObjects diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AbapGitObjectImpl.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AbapGitObjectImpl.java deleted file mode 100644 index 1e0302e8..00000000 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AbapGitObjectImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - */ -package org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl; - -import com.sap.adt.tools.core.model.adtcore.impl.AdtObjectReferenceImpl; - -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsPackage; - -import org.eclipse.emf.ecore.EClass; - -/** - * - * An implementation of the model object 'Abap Git Object'. - * - * - * @generated - */ -public class AbapGitObjectImpl extends AdtObjectReferenceImpl implements IAbapGitObject { - /** - * - * - * @generated - */ - protected AbapGitObjectImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return IAgitpullmodifiedobjectsPackage.Literals.ABAP_GIT_OBJECT; - } - -} //AbapGitObjectImpl diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AgitpullmodifiedobjectsFactoryImpl.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AgitpullmodifiedobjectsFactoryImpl.java index 29136082..e6e680cc 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AgitpullmodifiedobjectsFactoryImpl.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AgitpullmodifiedobjectsFactoryImpl.java @@ -60,7 +60,7 @@ public EObject create(EClass eClass) { case IAgitpullmodifiedobjectsPackage.DOCUMENT_ROOT: return createDocumentRoot(); case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECTS: return createOverwriteObjects(); case IAgitpullmodifiedobjectsPackage.PACKAGE_WARNING_OBJECTS: return createPackageWarningObjects(); - case IAgitpullmodifiedobjectsPackage.ABAP_GIT_OBJECT: return createAbapGitObject(); + case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT: return createOverwriteObject(); default: throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); } @@ -116,9 +116,9 @@ public IPackageWarningObjects createPackageWarningObjects() { * @generated */ @Override - public IAbapGitObject createAbapGitObject() { - AbapGitObjectImpl abapGitObject = new AbapGitObjectImpl(); - return abapGitObject; + public IOverwriteObject createOverwriteObject() { + OverwriteObjectImpl overwriteObject = new OverwriteObjectImpl(); + return overwriteObject; } /** diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AgitpullmodifiedobjectsPackageImpl.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AgitpullmodifiedobjectsPackageImpl.java index f2fee974..bbefe1bc 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AgitpullmodifiedobjectsPackageImpl.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/AgitpullmodifiedobjectsPackageImpl.java @@ -5,13 +5,12 @@ import com.sap.adt.tools.core.model.adtcore.IAdtCorePackage; import com.sap.adt.tools.core.model.atom.IAtomPackage; -import org.abapgit.adt.backend.model.abapgitpullrequest.IAbapgitpullrequestPackage; -import org.abapgit.adt.backend.model.abapgitpullrequest.impl.AbapgitpullrequestPackageImpl; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject; + import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitPullModifiedObjects; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsFactory; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsPackage; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IDocumentRoot; +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObjects; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IPackageWarningObjects; @@ -62,7 +61,7 @@ public class AgitpullmodifiedobjectsPackageImpl extends EPackageImpl implements * * @generated */ - private EClass abapGitObjectEClass = null; + private EClass overwriteObjectEClass = null; /** * Creates an instance of the model Package, registered with @@ -82,7 +81,6 @@ public class AgitpullmodifiedobjectsPackageImpl extends EPackageImpl implements private AgitpullmodifiedobjectsPackageImpl() { super(eNS_URI, IAgitpullmodifiedobjectsFactory.eINSTANCE); } - /** * * @@ -115,17 +113,11 @@ public static IAgitpullmodifiedobjectsPackage init() { IAdtCorePackage.eINSTANCE.eClass(); IAtomPackage.eINSTANCE.eClass(); - // Obtain or create and register interdependencies - Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(IAbapgitpullrequestPackage.eNS_URI); - AbapgitpullrequestPackageImpl theAbapgitpullrequestPackage = (AbapgitpullrequestPackageImpl)(registeredPackage instanceof AbapgitpullrequestPackageImpl ? registeredPackage : IAbapgitpullrequestPackage.eINSTANCE); - // Create package meta-data objects theAgitpullmodifiedobjectsPackage.createPackageContents(); - theAbapgitpullrequestPackage.createPackageContents(); // Initialize created meta-data theAgitpullmodifiedobjectsPackage.initializePackageContents(); - theAbapgitpullrequestPackage.initializePackageContents(); // Mark meta-data to indicate it can't be changed theAgitpullmodifiedobjectsPackage.freeze(); @@ -261,8 +253,28 @@ public EReference getPackageWarningObjects_Abapgitobjects() { * @generated */ @Override - public EClass getAbapGitObject() { - return abapGitObjectEClass; + public EClass getOverwriteObject() { + return overwriteObjectEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getOverwriteObject_Action() { + return (EAttribute)overwriteObjectEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getOverwriteObject_ActionDescription() { + return (EAttribute)overwriteObjectEClass.getEStructuralFeatures().get(1); } /** @@ -310,7 +322,9 @@ public void createPackageContents() { packageWarningObjectsEClass = createEClass(PACKAGE_WARNING_OBJECTS); createEReference(packageWarningObjectsEClass, PACKAGE_WARNING_OBJECTS__ABAPGITOBJECTS); - abapGitObjectEClass = createEClass(ABAP_GIT_OBJECT); + overwriteObjectEClass = createEClass(OVERWRITE_OBJECT); + createEAttribute(overwriteObjectEClass, OVERWRITE_OBJECT__ACTION); + createEAttribute(overwriteObjectEClass, OVERWRITE_OBJECT__ACTION_DESCRIPTION); } /** @@ -344,7 +358,7 @@ public void initializePackageContents() { // Set bounds for type parameters // Add supertypes to classes - abapGitObjectEClass.getESuperTypes().add(theAdtCorePackage.getAdtObjectReference()); + overwriteObjectEClass.getESuperTypes().add(theAdtCorePackage.getAdtObjectReference()); // Initialize classes, features, and operations; add parameters initEClass(abapGitPullModifiedObjectsEClass, IAbapGitPullModifiedObjects.class, "AbapGitPullModifiedObjects", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); @@ -358,12 +372,14 @@ public void initializePackageContents() { initEReference(getDocumentRoot_Abapgitpullmodifiedobjects(), this.getAbapGitPullModifiedObjects(), null, "abapgitpullmodifiedobjects", null, 0, 1, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEClass(overwriteObjectsEClass, IOverwriteObjects.class, "OverwriteObjects", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getOverwriteObjects_Abapgitobjects(), this.getAbapGitObject(), null, "abapgitobjects", null, 0, -1, IOverwriteObjects.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getOverwriteObjects_Abapgitobjects(), this.getOverwriteObject(), null, "abapgitobjects", null, 0, -1, IOverwriteObjects.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(packageWarningObjectsEClass, IPackageWarningObjects.class, "PackageWarningObjects", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getPackageWarningObjects_Abapgitobjects(), this.getAbapGitObject(), null, "abapgitobjects", null, 0, -1, IPackageWarningObjects.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getPackageWarningObjects_Abapgitobjects(), this.getOverwriteObject(), null, "abapgitobjects", null, 0, -1, IPackageWarningObjects.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEClass(abapGitObjectEClass, IAbapGitObject.class, "AbapGitObject", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEClass(overwriteObjectEClass, IOverwriteObject.class, "OverwriteObject", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getOverwriteObject_Action(), ecorePackage.getEString(), "action", null, 0, 1, IOverwriteObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOverwriteObject_ActionDescription(), ecorePackage.getEString(), "actionDescription", null, 0, 1, IOverwriteObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); // Create resource createResource(eNS_URI); @@ -470,6 +486,27 @@ protected void createExtendedMetaDataAnnotations() { "namespace", "##targetNamespace", "name", "abapgitobjects" }); + addAnnotation + (overwriteObjectEClass, + source, + new String[] { + "kind", "elementOnly", + "name", "overwriteObject" + }); + addAnnotation + (getOverwriteObject_Action(), + source, + new String[] { + "kind", "attribute", + "namespace", "##targetNamespace" + }); + addAnnotation + (getOverwriteObject_ActionDescription(), + source, + new String[] { + "kind", "attribute", + "namespace", "##targetNamespace" + }); } } //AgitpullmodifiedobjectsPackageImpl diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/OverwriteObjectImpl.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/OverwriteObjectImpl.java new file mode 100644 index 00000000..2496567f --- /dev/null +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/OverwriteObjectImpl.java @@ -0,0 +1,229 @@ +/** + */ +package org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl; + +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsPackage; +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import com.sap.adt.tools.core.model.adtcore.impl.AdtObjectReferenceImpl; + +/** + * An implementation of the model object + * 'Overwrite Object'. + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.OverwriteObjectImpl#getAction + * Action}
  • + *
  • {@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.impl.OverwriteObjectImpl#getActionDescription + * Action Description}
  • + *
+ * + * @generated + */ +public class OverwriteObjectImpl extends AdtObjectReferenceImpl implements IOverwriteObject { + /** + * The default value of the '{@link #getAction() Action}' + * attribute. + * + * @see #getAction() + * @generated + * @ordered + */ + protected static final String ACTION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getAction() Action}' attribute. + * + * + * @see #getAction() + * @generated + * @ordered + */ + protected String action = ACTION_EDEFAULT; + + /** + * The default value of the '{@link #getActionDescription() Action + * Description}' attribute. + * + * @see #getActionDescription() + * @generated + * @ordered + */ + protected static final String ACTION_DESCRIPTION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getActionDescription() Action + * Description}' attribute. + * + * @see #getActionDescription() + * @generated + * @ordered + */ + protected String actionDescription = ACTION_DESCRIPTION_EDEFAULT; + + /** + * + * + * @generated + */ + protected OverwriteObjectImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return IAgitpullmodifiedobjectsPackage.Literals.OVERWRITE_OBJECT; + } + + /** + * + * + * @generated + */ + @Override + public String getAction() { + return this.action; + } + + /** + * + * + * @generated + */ + @Override + public void setAction(String newAction) { + String oldAction = this.action; + this.action = newAction; + if (eNotificationRequired()) { + eNotify(new ENotificationImpl(this, Notification.SET, IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT__ACTION, oldAction, + this.action)); + } + } + + /** + * + * + * @generated + */ + @Override + public String getActionDescription() { + return this.actionDescription; + } + + /** + * + * + * @generated + */ + @Override + public void setActionDescription(String newActionDescription) { + String oldActionDescription = this.actionDescription; + this.actionDescription = newActionDescription; + if (eNotificationRequired()) { + eNotify(new ENotificationImpl(this, Notification.SET, IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT__ACTION_DESCRIPTION, + oldActionDescription, this.actionDescription)); + } + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT__ACTION: + return getAction(); + case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT__ACTION_DESCRIPTION: + return getActionDescription(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT__ACTION: + setAction((String) newValue); + return; + case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT__ACTION_DESCRIPTION: + setActionDescription((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT__ACTION: + setAction(ACTION_EDEFAULT); + return; + case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT__ACTION_DESCRIPTION: + setActionDescription(ACTION_DESCRIPTION_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT__ACTION: + return ACTION_EDEFAULT == null ? this.action != null : !ACTION_EDEFAULT.equals(this.action); + case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT__ACTION_DESCRIPTION: + return ACTION_DESCRIPTION_EDEFAULT == null ? this.actionDescription != null + : !ACTION_DESCRIPTION_EDEFAULT.equals(this.actionDescription); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) { + return super.toString(); + } + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (action: "); + result.append(this.action); + result.append(", actionDescription: "); + result.append(this.actionDescription); + result.append(')'); + return result.toString(); + } + +} //OverwriteObjectImpl diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/OverwriteObjectsImpl.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/OverwriteObjectsImpl.java index d70e2b29..58e3705b 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/OverwriteObjectsImpl.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/OverwriteObjectsImpl.java @@ -4,8 +4,8 @@ import java.util.Collection; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsPackage; +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObjects; import org.eclipse.emf.common.notify.NotificationChain; @@ -42,7 +42,7 @@ public class OverwriteObjectsImpl extends MinimalEObjectImpl.Container implement * @generated * @ordered */ - protected EList abapgitobjects; + protected EList abapgitobjects; /** * @@ -69,9 +69,9 @@ protected EClass eStaticClass() { * @generated */ @Override - public EList getAbapgitobjects() { + public EList getAbapgitobjects() { if (abapgitobjects == null) { - abapgitobjects = new EObjectContainmentEList(IAbapGitObject.class, this, IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECTS__ABAPGITOBJECTS); + abapgitobjects = new EObjectContainmentEList(IOverwriteObject.class, this, IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECTS__ABAPGITOBJECTS); } return abapgitobjects; } @@ -115,7 +115,7 @@ public void eSet(int featureID, Object newValue) { switch (featureID) { case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECTS__ABAPGITOBJECTS: getAbapgitobjects().clear(); - getAbapgitobjects().addAll((Collection)newValue); + getAbapgitobjects().addAll((Collection)newValue); return; } super.eSet(featureID, newValue); diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/PackageWarningObjectsImpl.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/PackageWarningObjectsImpl.java index ae7db4ce..2b3f4b13 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/PackageWarningObjectsImpl.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/impl/PackageWarningObjectsImpl.java @@ -4,8 +4,8 @@ import java.util.Collection; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsPackage; +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IPackageWarningObjects; import org.eclipse.emf.common.notify.NotificationChain; @@ -42,7 +42,7 @@ public class PackageWarningObjectsImpl extends MinimalEObjectImpl.Container impl * @generated * @ordered */ - protected EList abapgitobjects; + protected EList abapgitobjects; /** * @@ -69,9 +69,9 @@ protected EClass eStaticClass() { * @generated */ @Override - public EList getAbapgitobjects() { + public EList getAbapgitobjects() { if (abapgitobjects == null) { - abapgitobjects = new EObjectContainmentEList(IAbapGitObject.class, this, IAgitpullmodifiedobjectsPackage.PACKAGE_WARNING_OBJECTS__ABAPGITOBJECTS); + abapgitobjects = new EObjectContainmentEList(IOverwriteObject.class, this, IAgitpullmodifiedobjectsPackage.PACKAGE_WARNING_OBJECTS__ABAPGITOBJECTS); } return abapgitobjects; } @@ -115,7 +115,7 @@ public void eSet(int featureID, Object newValue) { switch (featureID) { case IAgitpullmodifiedobjectsPackage.PACKAGE_WARNING_OBJECTS__ABAPGITOBJECTS: getAbapgitobjects().clear(); - getAbapgitobjects().addAll((Collection)newValue); + getAbapgitobjects().addAll((Collection)newValue); return; } super.eSet(featureID, newValue); diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsAdapterFactory.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsAdapterFactory.java index 02796c85..aa8ea389 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsAdapterFactory.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsAdapterFactory.java @@ -3,6 +3,7 @@ package org.abapgit.adt.backend.model.agitpullmodifiedobjects.util; import com.sap.adt.tools.core.model.adtcore.IAdtObjectReference; + import org.abapgit.adt.backend.model.agitpullmodifiedobjects.*; import org.eclipse.emf.common.notify.Adapter; @@ -85,8 +86,8 @@ public Adapter casePackageWarningObjects(IPackageWarningObjects object) { return createPackageWarningObjectsAdapter(); } @Override - public Adapter caseAbapGitObject(IAbapGitObject object) { - return createAbapGitObjectAdapter(); + public Adapter caseOverwriteObject(IOverwriteObject object) { + return createOverwriteObjectAdapter(); } @Override public Adapter caseAdtObjectReference(IAdtObjectReference object) { @@ -169,16 +170,16 @@ public Adapter createPackageWarningObjectsAdapter() { } /** - * Creates a new adapter for an object of class '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject Abap Git Object}'. + * Creates a new adapter for an object of class '{@link org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject Overwrite Object}'. * * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * * @return the new adapter. - * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject + * @see org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject * @generated */ - public Adapter createAbapGitObjectAdapter() { + public Adapter createOverwriteObjectAdapter() { return null; } diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsResourceFactoryImpl.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsResourceFactoryImpl.java index 7e67e8da..901da5c7 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsResourceFactoryImpl.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsResourceFactoryImpl.java @@ -44,7 +44,6 @@ public Resource createResource(URI uri) { result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_LEXICAL_HANDLER, Boolean.TRUE); result.getDefaultLoadOptions().put(XMLResource.OPTION_RECORD_UNKNOWN_FEATURE, Boolean.TRUE); - return result; } diff --git a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsSwitch.java b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsSwitch.java index df98fee0..cb011979 100644 --- a/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsSwitch.java +++ b/org.abapgit.adt.backend/src/org/abapgit/adt/backend/model/agitpullmodifiedobjects/util/AgitpullmodifiedobjectsSwitch.java @@ -3,6 +3,7 @@ package org.abapgit.adt.backend.model.agitpullmodifiedobjects.util; import com.sap.adt.tools.core.model.adtcore.IAdtObjectReference; + import org.abapgit.adt.backend.model.agitpullmodifiedobjects.*; import org.eclipse.emf.ecore.EObject; @@ -91,10 +92,10 @@ protected T doSwitch(int classifierID, EObject theEObject) { if (result == null) result = defaultCase(theEObject); return result; } - case IAgitpullmodifiedobjectsPackage.ABAP_GIT_OBJECT: { - IAbapGitObject abapGitObject = (IAbapGitObject)theEObject; - T result = caseAbapGitObject(abapGitObject); - if (result == null) result = caseAdtObjectReference(abapGitObject); + case IAgitpullmodifiedobjectsPackage.OVERWRITE_OBJECT: { + IOverwriteObject overwriteObject = (IOverwriteObject)theEObject; + T result = caseOverwriteObject(overwriteObject); + if (result == null) result = caseAdtObjectReference(overwriteObject); if (result == null) result = defaultCase(theEObject); return result; } @@ -163,17 +164,17 @@ public T casePackageWarningObjects(IPackageWarningObjects object) { } /** - * Returns the result of interpreting the object as an instance of 'Abap Git Object'. + * Returns the result of interpreting the object as an instance of 'Overwrite Object'. * * This implementation returns null; * returning a non-null result will terminate the switch. * * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Abap Git Object'. + * @return the result of interpreting the object as an instance of 'Overwrite Object'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseAbapGitObject(IAbapGitObject object) { + public T caseOverwriteObject(IOverwriteObject object) { return null; } diff --git a/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/repositories/IRepositoryModifiedObjects.java b/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/repositories/IRepositoryModifiedObjects.java index 63fe700d..697f8391 100644 --- a/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/repositories/IRepositoryModifiedObjects.java +++ b/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/repositories/IRepositoryModifiedObjects.java @@ -2,7 +2,7 @@ import java.util.List; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject; +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject; /** * This interface helps to maintain the modified objects for each repository. @@ -37,5 +37,5 @@ public interface IRepositoryModifiedObjects { * @return Modified Objects . * */ - List getModifiedObjects(); + List getModifiedObjects(); } diff --git a/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/repositories/RepositoryModifiedObjects.java b/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/repositories/RepositoryModifiedObjects.java index ec46acaf..aeea24a9 100644 --- a/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/repositories/RepositoryModifiedObjects.java +++ b/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/repositories/RepositoryModifiedObjects.java @@ -2,7 +2,7 @@ import java.util.List; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject; +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject; /** * Implements IRepositoryModifiedObjects @@ -41,9 +41,9 @@ public boolean equals(Object obj) { } private final String repositoryURL; - private final List modifiedObjects; + private final List modifiedObjects; - public RepositoryModifiedObjects(String repositoryURL, List modifiedObjects) { + public RepositoryModifiedObjects(String repositoryURL, List modifiedObjects) { this.repositoryURL = repositoryURL; this.modifiedObjects = modifiedObjects; } @@ -54,7 +54,7 @@ public String getRepositoryURL() { } @Override - public List getModifiedObjects() { + public List getModifiedObjects() { return this.modifiedObjects; } diff --git a/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/util/RepositoryUtil.java b/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/util/RepositoryUtil.java index 9f21754c..83b13cb9 100644 --- a/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/util/RepositoryUtil.java +++ b/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/util/RepositoryUtil.java @@ -6,8 +6,8 @@ import org.abapgit.adt.backend.IRepositoryService; import org.abapgit.adt.backend.model.abapgitrepositories.IRepository; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitPullModifiedObjects; +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject; import org.abapgit.adt.ui.internal.repositories.RepositoryModifiedObjects; import org.abapgit.adt.ui.internal.wizards.AbapGitWizard.CloneData; import org.eclipse.core.runtime.NullProgressMonitor; @@ -66,15 +66,13 @@ public static void fetchAndExtractModifiedObjectsToPull(IRepository repository, adjust_overwrite_objects(abapPullModifiedObjects); if (!abapPullModifiedObjects.getOverwriteObjects().getAbapgitobjects().isEmpty()) { - - cloneData.repoToModifiedOverwriteObjects.add(new RepositoryModifiedObjects(repository.getUrl(), - new ArrayList(abapPullModifiedObjects.getOverwriteObjects().getAbapgitobjects()))); + new ArrayList(abapPullModifiedObjects.getOverwriteObjects().getAbapgitobjects()))); } if (!abapPullModifiedObjects.getPackageWarningObjects().getAbapgitobjects().isEmpty()) { cloneData.repoToModifiedPackageWarningObjects.add(new RepositoryModifiedObjects(repository.getUrl(), - new ArrayList(abapPullModifiedObjects.getPackageWarningObjects().getAbapgitobjects()))); + new ArrayList(abapPullModifiedObjects.getPackageWarningObjects().getAbapgitobjects()))); } } @@ -87,12 +85,12 @@ private static void adjust_overwrite_objects(IAbapGitPullModifiedObjects abapPul } if (abapPullModifiedObjects.getPackageWarningObjects() != null) { - List warningObjects = abapPullModifiedObjects.getPackageWarningObjects().getAbapgitobjects(); + List warningObjects = abapPullModifiedObjects.getPackageWarningObjects().getAbapgitobjects(); - for (IAbapGitObject abapGitObject : warningObjects) { - Iterator iterator = abapPullModifiedObjects.getOverwriteObjects().getAbapgitobjects().iterator(); + for (IOverwriteObject abapGitObject : warningObjects) { + Iterator iterator = abapPullModifiedObjects.getOverwriteObjects().getAbapgitobjects().iterator(); while (iterator.hasNext()) { - IAbapGitObject overwriteObject = iterator.next(); + IOverwriteObject overwriteObject = iterator.next(); if (overwriteObject.getName().equals(abapGitObject.getName()) && overwriteObject.getType().equals(abapGitObject.getType())) { iterator.remove(); diff --git a/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/wizards/AbapGitWizardPageObjectsSelectionForPull.java b/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/wizards/AbapGitWizardPageObjectsSelectionForPull.java index 732ec056..79db0de6 100644 --- a/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/wizards/AbapGitWizardPageObjectsSelectionForPull.java +++ b/org.abapgit.adt.ui/src/org/abapgit/adt/ui/internal/wizards/AbapGitWizardPageObjectsSelectionForPull.java @@ -5,19 +5,22 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +import java.util.stream.Collectors; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject; +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject; import org.abapgit.adt.ui.internal.i18n.Messages; import org.abapgit.adt.ui.internal.repositories.IRepositoryModifiedObjects; import org.abapgit.adt.ui.internal.repositories.RepositoryModifiedObjects; import org.abapgit.adt.ui.internal.util.RepositoryUtil; import org.eclipse.jface.layout.TreeColumnLayout; +import org.eclipse.jface.viewers.AbstractTreeViewer; import org.eclipse.jface.viewers.ArrayContentProvider; import org.eclipse.jface.viewers.CheckStateChangedEvent; import org.eclipse.jface.viewers.CheckboxTreeViewer; import org.eclipse.jface.viewers.ColumnLabelProvider; import org.eclipse.jface.viewers.ColumnWeightData; import org.eclipse.jface.viewers.ICheckStateListener; +import org.eclipse.jface.viewers.ICheckStateProvider; import org.eclipse.jface.viewers.ITreeContentProvider; import org.eclipse.jface.viewers.TreeViewerColumn; import org.eclipse.jface.wizard.IWizardPage; @@ -67,6 +70,7 @@ public void createControl(Composite parent) { this.modifiedObjTreeViewer.getTree().setFocus(); this.modifiedObjTreeViewer.getTree().setHeaderVisible(true); this.modifiedObjTreeViewer.getTree().setLinesVisible(true); + this.modifiedObjTreeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); createColumns(); @@ -74,26 +78,9 @@ public void createControl(Composite parent) { setControl(this.container); setPageComplete(true); + this.modifiedObjTreeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); - // Check the sub tree if parent is checked - this.modifiedObjTreeViewer.addCheckStateListener(new ICheckStateListener() { - - @Override - public void checkStateChanged(CheckStateChangedEvent event) { - if (event.getElement() instanceof IRepositoryModifiedObjects) { - if (event.getChecked()) { - AbapGitWizardPageObjectsSelectionForPull.this.modifiedObjTreeViewer.setSubtreeChecked(event.getElement(), true); - - } else { - AbapGitWizardPageObjectsSelectionForPull.this.modifiedObjTreeViewer.setSubtreeChecked(event.getElement(), false); - } - } - AbapGitWizardPageObjectsSelectionForPull.this.selectedObjectsForRepository = AbapGitWizardPageObjectsSelectionForPull.this.modifiedObjTreeViewer - .getCheckedElements(); - - } - }); - + addListeners(); } private void createColumns() { @@ -107,8 +94,8 @@ public String getText(Object element) { if (element instanceof IRepositoryModifiedObjects) { result = "Repository: " + RepositoryUtil.getRepoNameFromUrl(((IRepositoryModifiedObjects) element).getRepositoryURL()); //$NON-NLS-1$ - } else if (element instanceof IAbapGitObject) { - result = ((IAbapGitObject) element).getName(); + } else if (element instanceof IOverwriteObject) { + result = ((IOverwriteObject) element).getName(); } return result; } @@ -119,8 +106,8 @@ public String getText(Object element) { createTreeViewerColumn("Package", 200).setLabelProvider(new ColumnLabelProvider() { //$NON-NLS-1$ @Override public String getText(Object element) { - if (element instanceof IAbapGitObject) { - return ((IAbapGitObject) element).getPackageName(); + if (element instanceof IOverwriteObject) { + return ((IOverwriteObject) element).getPackageName(); } return ""; //$NON-NLS-1$ @@ -131,8 +118,26 @@ public String getText(Object element) { createTreeViewerColumn("Type", 20).setLabelProvider(new ColumnLabelProvider() { //$NON-NLS-1$ @Override public String getText(Object element) { - if (element instanceof IAbapGitObject) { - return ((IAbapGitObject) element).getType(); + if (element instanceof IOverwriteObject) { + return ((IOverwriteObject) element).getType(); + } + return ""; //$NON-NLS-1$ + } + }); + + /** + * TODO: Change this column to Description and add another column with + * Action and add an icon. + */ + createTreeViewerColumn("Action", 100).setLabelProvider(new ColumnLabelProvider() { //$NON-NLS-1$ + @Override + public String getText(Object element) { + if (element instanceof IOverwriteObject) { + String actionDescription = ((IOverwriteObject) element).getActionDescription(); + if (actionDescription == null || actionDescription.isBlank()) { + return "Modify object locally"; //$NON-NLS-1$ + } + return actionDescription; } return ""; //$NON-NLS-1$ } @@ -188,10 +193,10 @@ public Set getSelectedObjects() { // Loop over the input for the checkboxTreeViewer (modifiedobjects) for (IRepositoryModifiedObjects modifiedObjectsForRepository : input) { - List objects = new ArrayList(); + List objects = new ArrayList(); String repositoryURL = modifiedObjectsForRepository.getRepositoryURL(); - for (IAbapGitObject obj : modifiedObjectsForRepository.getModifiedObjects()) { + for (IOverwriteObject obj : modifiedObjectsForRepository.getModifiedObjects()) { //If the object is in the list of checked/selected objects , // add it to the list of objects to pull and map it to the corresponding repo if (Arrays.asList(this.selectedObjectsForRepository).contains(obj)) { @@ -239,5 +244,59 @@ public boolean hasChildren(Object element) { } + private void addListeners() { + // Check the sub tree if parent is checked + this.modifiedObjTreeViewer.addCheckStateListener(new ICheckStateListener() { + + @Override + public void checkStateChanged(CheckStateChangedEvent event) { + if (event.getElement() instanceof IRepositoryModifiedObjects) { + if (event.getChecked()) { + AbapGitWizardPageObjectsSelectionForPull.this.modifiedObjTreeViewer.setSubtreeChecked(event.getElement(), true); + } else { + AbapGitWizardPageObjectsSelectionForPull.this.modifiedObjTreeViewer.setSubtreeChecked(event.getElement(), false); + + //keep the objects to be added locally checked always + IRepositoryModifiedObjects modifiedObjects = (IRepositoryModifiedObjects) event.getElement(); + List objectsToAddLocally = modifiedObjects.getModifiedObjects().stream() + .filter((obj) -> obj.getAction() != null && obj.getAction().equals("1")).collect(Collectors.toList()); //$NON-NLS-1$ + AbapGitWizardPageObjectsSelectionForPull.this.modifiedObjTreeViewer + .setCheckedElements(objectsToAddLocally.toArray()); + } + } + + if (event.getElement() instanceof IOverwriteObject) { + IOverwriteObject modifiedObject = (IOverwriteObject) event.getElement(); + if (modifiedObject.getAction() != null && modifiedObject.getAction().equals("1")) { //$NON-NLS-1$ + AbapGitWizardPageObjectsSelectionForPull.this.modifiedObjTreeViewer.setChecked(modifiedObject, true); + } + } + + AbapGitWizardPageObjectsSelectionForPull.this.selectedObjectsForRepository = AbapGitWizardPageObjectsSelectionForPull.this.modifiedObjTreeViewer + .getCheckedElements(); + + } + }); + + // Check elements which have action as 1 i.e. Objects to be added + this.modifiedObjTreeViewer.setCheckStateProvider(new ICheckStateProvider() { + + @Override + public boolean isGrayed(Object element) { + return false; + } + + @Override + public boolean isChecked(Object element) { + if (element instanceof IOverwriteObject) { + IOverwriteObject object = (IOverwriteObject) element; + if (object.getAction() != null && object.getAction().equals("1")) { //$NON-NLS-1$ + return true; + } + } + return false; + } + }); + } } diff --git a/test/org.abapgit.adt.backend.test/src/org/abapgit/adt/backend/internal/TestsUnitPullModifiedObjectsContentHandler.java b/test/org.abapgit.adt.backend.test/src/org/abapgit/adt/backend/internal/TestsUnitPullModifiedObjectsContentHandler.java index 6828da4c..ab9f9c22 100644 --- a/test/org.abapgit.adt.backend.test/src/org/abapgit/adt/backend/internal/TestsUnitPullModifiedObjectsContentHandler.java +++ b/test/org.abapgit.adt.backend.test/src/org/abapgit/adt/backend/internal/TestsUnitPullModifiedObjectsContentHandler.java @@ -2,18 +2,16 @@ import static org.junit.Assert.assertEquals; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitPullModifiedObjects; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsFactory; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IDocumentRoot; +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObjects; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IPackageWarningObjects; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.util.AgitpullmodifiedobjectsResourceFactoryImpl; import org.eclipse.emf.ecore.resource.Resource; import org.junit.Test; -import com.sap.adt.tools.core.model.adtcore.IAdtCoreFactory; - public class TestsUnitPullModifiedObjectsContentHandler { @Test @@ -28,10 +26,10 @@ public void TestLoadEMFFromResource() { IOverwriteObjects overwriteObjects = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObjects(); IPackageWarningObjects packageWarningObjects = IAgitpullmodifiedobjectsFactory.eINSTANCE.createPackageWarningObjects(); - IAbapGitObject packageWarningObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createAbapGitObject(); + IOverwriteObject packageWarningObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObject(); packageWarningObject1.setName("PackageWarningObject1"); - IAbapGitObject overwriteObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createAbapGitObject(); + IOverwriteObject overwriteObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObject(); overwriteObject1.setName("OverwriteObject1"); overwriteObjects.getAbapgitobjects().add(overwriteObject1); diff --git a/test/org.abapgit.adt.ui.test/src/org/abapgit/adt/ui/internal/util/TestsUnitAbapGitPullService.java b/test/org.abapgit.adt.ui.test/src/org/abapgit/adt/ui/internal/util/TestsUnitAbapGitPullService.java index f873ad72..0b6af032 100644 --- a/test/org.abapgit.adt.ui.test/src/org/abapgit/adt/ui/internal/util/TestsUnitAbapGitPullService.java +++ b/test/org.abapgit.adt.ui.test/src/org/abapgit/adt/ui/internal/util/TestsUnitAbapGitPullService.java @@ -5,24 +5,14 @@ import java.util.Map; import java.util.Set; -import org.abapgit.adt.backend.IRepositoryService; -import org.abapgit.adt.backend.model.abapgitrepositories.IRepository; -import org.abapgit.adt.backend.model.abapgitrepositories.impl.AbapgitrepositoriesFactoryImpl; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject; +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitPullModifiedObjects; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsFactory; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObjects; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IPackageWarningObjects; import org.abapgit.adt.ui.internal.repositories.IRepositoryModifiedObjects; import org.abapgit.adt.ui.internal.repositories.RepositoryModifiedObjects; import org.junit.Assert; import org.junit.Test; -import com.sap.adt.tools.core.model.adtcore.IAdtCoreFactory; -import com.sap.adt.tools.core.model.atom.IAtomFactory; -import com.sap.adt.tools.core.model.atom.IAtomLink; - - public class TestsUnitAbapGitPullService { @Test @@ -30,21 +20,21 @@ public void getSelectedObjectsToPullforRepo() { //Prepare test data. //repo1 - IAbapGitObject repo1overwriteObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createAbapGitObject(); + IOverwriteObject repo1overwriteObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObject(); repo1overwriteObject1.setName("repo1OverwriteObject1"); - IAbapGitObject repo1overwriteObject2 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createAbapGitObject(); + IOverwriteObject repo1overwriteObject2 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObject(); repo1overwriteObject2.setName("repo1OverwriteObject2"); - IAbapGitObject repo1packageWarningObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createAbapGitObject(); + IOverwriteObject repo1packageWarningObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObject(); repo1packageWarningObject1.setName("repo1PackageWarningObject1"); //repo2 - IAbapGitObject repo2overwriteObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createAbapGitObject(); + IOverwriteObject repo2overwriteObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObject(); repo2overwriteObject1.setName("repo2OverwriteObject1"); - IAbapGitObject repo2packageWarningObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createAbapGitObject(); + IOverwriteObject repo2packageWarningObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObject(); repo2packageWarningObject1.setName("repo2PackageWarningObject1"); - IAbapGitObject repo2packageWarningObject2 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createAbapGitObject(); + IOverwriteObject repo2packageWarningObject2 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObject(); repo2packageWarningObject2.setName("repo2PackageWarningObject2"); // parameters for getSelectedObjectsToPullForRepo diff --git a/test/org.abapgit.adt.ui.test/src/org/abapgit/adt/ui/internal/util/TestsUnitRepositoryUtil.java b/test/org.abapgit.adt.ui.test/src/org/abapgit/adt/ui/internal/util/TestsUnitRepositoryUtil.java index b1b600d5..af5b3787 100644 --- a/test/org.abapgit.adt.ui.test/src/org/abapgit/adt/ui/internal/util/TestsUnitRepositoryUtil.java +++ b/test/org.abapgit.adt.ui.test/src/org/abapgit/adt/ui/internal/util/TestsUnitRepositoryUtil.java @@ -5,22 +5,16 @@ import static org.easymock.EasyMock.expect; import static org.easymock.EasyMock.replay; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.Set; - import org.abapgit.adt.backend.IRepositoryService; import org.abapgit.adt.backend.model.abapgitrepositories.IAbapgitrepositoriesFactory; import org.abapgit.adt.backend.model.abapgitrepositories.IRepository; -import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitObject; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAbapGitPullModifiedObjects; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IAgitpullmodifiedobjectsFactory; +import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObject; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IOverwriteObjects; import org.abapgit.adt.backend.model.agitpullmodifiedobjects.IPackageWarningObjects; import org.abapgit.adt.ui.internal.repositories.IRepositoryModifiedObjects; -import org.abapgit.adt.ui.internal.repositories.RepositoryModifiedObjects; import org.abapgit.adt.ui.internal.wizards.AbapGitWizard.CloneData; -import org.eclipse.core.runtime.NullProgressMonitor; import org.junit.Assert; import org.junit.BeforeClass; import org.junit.Test; @@ -59,10 +53,10 @@ public void fetchAndExtractModifiedObjectsToPull() { IOverwriteObjects overwriteObjects = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObjects(); IPackageWarningObjects packageWarningObjects = IAgitpullmodifiedobjectsFactory.eINSTANCE.createPackageWarningObjects(); - IAbapGitObject packageWarningObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createAbapGitObject(); + IOverwriteObject packageWarningObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObject(); packageWarningObject1.setName("PackageWarningObject1"); - IAbapGitObject overwriteObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createAbapGitObject(); + IOverwriteObject overwriteObject1 = IAgitpullmodifiedobjectsFactory.eINSTANCE.createOverwriteObject(); overwriteObject1.setName("OverwriteObject1"); overwriteObjects.getAbapgitobjects().add(overwriteObject1);