Christopher L. Shannon created AMQ-9824:
-------------------------------------------

             Summary: Cleanup KahaDBStore and MessageDatabase classes
                 Key: AMQ-9824
                 URL: https://issues.apache.org/jira/browse/AMQ-9824
             Project: ActiveMQ
          Issue Type: Task
          Components: KahaDB
            Reporter: Christopher L. Shannon
            Assignee: Christopher L. Shannon
             Fix For: 6.3.0


While looking at AMQ-9823 I noticed just how much of a mess a lot of the code 
is in KahaDB. I decided to go through and clean up some of the issues in the 
code and also modernize it a bit (ie use lambdas in some spots). There is still 
more to do but this will be a good start. Note that I only tackled the 
KahaDBStore and MessageDatabase classes as there were already a lot of changes 
and the PR is big enough. Other classes like PageFile or future work can be 
done in a follow on PR.

This task will include the following:

* Fixes the scope of several methods and types. For example, there were many 
cases where protected methods were referencing types that were package scope.
* Simplified the code by replacing anonymous methods with lambdas
* removed unused methods and parameters
* removed unnecessary casts
* cleaned up the use of generics where types could be inferred
* Replaced the ReentrantReadWriteLock that was used for indexLock with 
ReentrantLock becuase only the write lock was ever being used (the page file 
doesn't support concurrent reads right now). This should provide a small 
performance/memory improvement and simplifies the code a bit.
* removed unnecessary null initializations
* cleaned up logging to remove string concatenation and instead use parameters
* removed method overrides that are the same as the parent or just call the 
super method
* removed unused checked exceptions from method's throws
* marked inner classes as static when possible



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to