-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/69305/
-----------------------------------------------------------
(Updated Nov. 13, 2018, 6:01 a.m.)
Review request for atlas, Kapildeo Nayak, Madhan Neethiraj, Nikhil Bonte, Nixon
Rodrigues, and Sarath Subramanian.
Changes
-------
Updates include: Pre-commit build details.
Bugs: ATLAS-2774
https://issues.apache.org/jira/browse/ATLAS-2774
Repository: atlas
Description
-------
**Approach**
- New: _DeleteHandlerDelegate_. This is a decorator over _DeleteHandlerV1_. In
its implementation it encapsulates:
- _SoftDeleteHandler_: Existing implementation.
- _HardDeleteHandler_: Existing implementation.
- _DefaultHandler_ which is initialized via _atlas-application.properties_.
- Modified: _EntityREST_ to accept additional parameter to specify if the
delete is hard or soft.
- Modified: _AtlasEntityStoreV2_ to accept additional parameter. Existing APIs
delegate their function to the new more generic method.
- Modified: _ConditionalOnAtlasProperty_ to be applied on field instead of
class. This initializes the handler from _atlas-application.properties_.
**CURL**
Hard
```
curl -X DELETE
'http://localhost:21000/api/atlas/v2/entity/guid/abc8c380-2bfe-47aa-b405-5b79ea9a2a0d?hard=true'
```
Soft
```
curl -X DELETE
'http://localhost:21000/api/atlas/v2/entity/guid/abc8c380-2bfe-47aa-b405-5b79ea9a2a0d?hard=false'
```
Default: As initialized by application based on _atlas-application.properties_
```
curl -X DELETE
'http://localhost:21000/api/atlas/v2/entity/guid/abc8c380-2bfe-47aa-b405-5b79ea9a2a0d'
```
Diffs
-----
intg/src/main/java/org/apache/atlas/store/DeleteType.java PRE-CREATION
repository/src/main/java/org/apache/atlas/repository/store/graph/AtlasEntityStore.java
750fa1775
repository/src/main/java/org/apache/atlas/repository/store/graph/v1/DeleteHandlerDelegate.java
PRE-CREATION
repository/src/main/java/org/apache/atlas/repository/store/graph/v1/SoftDeleteHandlerV1.java
0bcf0d6cb
repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasEntityStoreV2.java
733369692
repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasRelationshipStoreV2.java
21617dcc3
repository/src/test/java/org/apache/atlas/repository/impexp/ExportSkipLineageTest.java
3393b82d8
repository/src/test/java/org/apache/atlas/repository/store/graph/v2/AtlasEntityStoreV2Test.java
4fd28206c
repository/src/test/java/org/apache/atlas/repository/store/graph/v2/AtlasEntityTestBase.java
ba0551050
repository/src/test/java/org/apache/atlas/repository/store/graph/v2/AtlasRelationshipStoreV2Test.java
cd1d72787
webapp/src/main/java/org/apache/atlas/web/resources/EntityResource.java
00b29e6c8
webapp/src/main/java/org/apache/atlas/web/rest/EntityREST.java 68c132c37
webapp/src/test/java/org/apache/atlas/web/adapters/TestEntityREST.java
6739364ac
webapp/src/test/java/org/apache/atlas/web/adapters/TestEntityRESTDelete.java
PRE-CREATION
Diff: https://reviews.apache.org/r/69305/diff/4/
Testing (updated)
-------
**Unit tests**
Additional unit tests.
**Functional tests**
- Via REST APIs. (See above.)
- Tested with
atlas.DeleteHandlerV1.impl=org.apache.atlas.repository.store.graph.v1.SoftDeleteHandlerV1
- Tested with
atlas.DeleteHandlerV1.impl=org.apache.atlas.repository.store.graph.v1.HardDeleteHandlerV1
**Pre-commit**
https://builds.apache.org/view/A/view/Atlas/job/PreCommit-ATLAS-Build-Test/799/
Thanks,
Ashutosh Mestry