Remove duplicated code from Put, Delete, Get, Scan, MultiPut
------------------------------------------------------------

                 Key: HBASE-4347
                 URL: https://issues.apache.org/jira/browse/HBASE-4347
             Project: HBase
          Issue Type: Improvement
          Components: util
    Affects Versions: 0.92.0
            Reporter: Lars Hofhansl
            Priority: Minor
             Fix For: 0.92.0


This came from discussion with Stack w.r.t. HBASE-2195.

There is currently a lot of duplicated code especially between Put and Delete, 
and also between all Operations.
For example all of Put/Delete/Get/Scan have attributes with exactly the same 
code in all classes.
Put and Delete also have the familyMap, Row, Rowlock, Timestamp, etc.

One way to do this is to introduce "OperationWithAttributes" which extends 
Operation, and have Put/Delete/Get/Scan extend that rather than Operation.
In addition Put and Delete could extends from Mutation (which itself would 
extend OperationWithAttributes).

If a static inheritance hierarchy is not desired here, we can use delegation.


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to