You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
once the services are stable (online for more than 6 month), we can just delete the deprecated lines, and there is no need to modify the names of getFirstNameV2 back to getFirstName;
a simple test case: there are only - in git diff, no +, no +-
@Service
public class UserServiceImpl implements UserService {
- @FeatGate(flag = "getFirstName", value = "v1")- @FeatGate(flag = "getFirstName", value = "default")- private String getFirstName() {- return "albert";- }- @FeatGate(flag = "getFirstName", value = "v2")
private String getFirstName() {
return Utils.upperCase("albert");
}
}
Additional context
I guess dynamic languages like Python / JavaScript have dark magics as @decorator to implement that.
But I'd like to see a more standard and no magic implement.
I suggest the annotation name to be @DeliverGate to imply it's about the dev side of code and deliver. Dev can and should delete the lines after stable deliver and without need to notify business departments.
Is this feature something you're interested in working on?
The text was updated successfully, but these errors were encountered:
Is your feature request related to a problem? Please describe.
The webapp renders user's firstname and lastname.
The 1st sprint delivers a simple solution rendering plain values from database.
The 2nd sprint requires to format the values.
albert
->Albert
,einstein
->E.
.The format utils comes from another team. We need a
@FeatGate
to switch between new format and old no-format, in case the format utils not work.@FeatGate example from current docs
The example is a
Controller
level switch. But we want multiple fine grained flags to switch each independently. Something like:The Feature Sugguestion
We should decouple the @FeatGate flags from code. The impl of UserService should wraps flags and promise to return final values to Controller.
Feature Suggestion: The Real RFC
We want the variants of impl to share the same name as the interface.
getFirstName
, notgetFirstNameV1
; nov1
,v2
@override
The benefits:
getFirstNameV2
back togetFirstName
;-
in git diff, no+
, no+-
Additional context
I guess dynamic languages like Python / JavaScript have dark magics as
@decorator
to implement that.But I'd like to see a more standard and no magic implement.
I suggest the annotation name to be
@DeliverGate
to imply it's about the dev side of code and deliver. Dev can and should delete the lines after stable deliver and without need to notify business departments.Is this feature something you're interested in working on?
The text was updated successfully, but these errors were encountered: