[
https://issues.apache.org/jira/browse/PHOENIX-5432?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16977008#comment-16977008
]
Chinmay Kulkarni commented on PHOENIX-5432:
-------------------------------------------
[~christine.feng] please take a look at the review comments on your PR. The
changes look really good overall. Thanks for putting in all the effort in
refactoring this code. It was long overdue. Appreciate it!
> Refactor LiteralExpression to use the builder pattern
> -----------------------------------------------------
>
> Key: PHOENIX-5432
> URL: https://issues.apache.org/jira/browse/PHOENIX-5432
> Project: Phoenix
> Issue Type: Improvement
> Affects Versions: 4.15.0, 5.1.0
> Reporter: Chinmay Kulkarni
> Assignee: Christine Feng
> Priority: Major
> Attachments: PHOENIX-5432-master-v1.patch,
> PHOENIX-5432.master.v2.patch, PHOENIX-5432.master.v3.patch,
> PHOENIX-5432.master.v4.patch, PHOENIX-5432.master.v5.patch,
> PHOENIX-5432.master.v6.patch, PHOENIX-5432.patch
>
> Time Spent: 4.5h
> Remaining Estimate: 0h
>
> LiteralExpression is a mess. While it provides newConstant() APIs to build
> the object, it also provides two public constructors. There are 10 overloaded
> newConstant() methods and it is unclear which API to use in which case.
> This should be refactored to use the builder pattern and final member
> variables. Ideally, getters such as getMaxLength() should be simple member
> variable accessors and other ad-hoc logic surrounding those variables should
> be handled correctly when setting their respective values.
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)