> On Nov. 10, 2018, 6:10 p.m., Madhan Neethiraj wrote: > > repository/src/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java > > Line 99 (original), 100 (patched) > > <https://reviews.apache.org/r/69305/diff/1/?file=2106562#file2106562line100> > > > > If configuration explicity specifies SoftDeleteHandlerV1 (or > > HardDeleteHandlerV1), then DeleteHandlerDelegate will not be instantiated - > > right? In such case, the option provided in the delete call may not be > > honored. Please review and update.
The DeleteHandlerDelegate will always be instantiated. The defaultDeleteHandler within the delegate will get the value that is set by the configuration. - Ashutosh ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/69305/#review210451 ----------------------------------------------------------- On Nov. 9, 2018, 7:50 p.m., Ashutosh Mestry wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/69305/ > ----------------------------------------------------------- > > (Updated Nov. 9, 2018, 7:50 p.m.) > > > Review request for atlas, Kapildeo Nayak, Madhan Neethiraj, Nikhil Bonte, > Nixon Rodrigues, and Sarath Subramanian. > > > 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 > ----- > > > common/src/main/java/org/apache/atlas/annotation/ConditionalOnAtlasProperty.java > 427e3a8f8 > > 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/DeleteHandlerV1.java > c57e30ab5 > > repository/src/main/java/org/apache/atlas/repository/store/graph/v1/HardDeleteHandlerV1.java > edf1eed4c > > 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/main/java/org/apache/atlas/util/AtlasRepositoryConfiguration.java > bf16145a3 > repository/src/test/java/org/apache/atlas/TestModules.java d3d30d5d9 > 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/1/ > > > Testing > ------- > > **Unit tests** > Additional unit tests. > > **Functional tests** > Via REST APIs. (See above.) > > > Thanks, > > Ashutosh Mestry > >
