Summary
This is a basic proposal for refactoring the twitter provider, which currently relies on twitter4j. Twitter4j has dependencies that are now category X.
Objectives
The refactor should:
- Remove twitter4j as a dependency
- Replace twitter4j solely with ASF foundation code if possible
- Retain all existing tests, with minimal change to the tests
- Maintain or improve performance as measured by total execution time of the integration tests
- Reduce number of source files in the module (currently > 20)
- Reduce module lines of code by at least 50%
- Provide a pattern that we can follow in other components that rely on non-ASF third party modules for integration with APIs
Proposal
References