In this document the process of implementing custom feature flags is presented. In the subsequent sections we will create a feature flag that is enabled if it’s
number field is odd.
Each feature flag requires 1 function to be implemented:
is_enabled.<FEATURE_FLAG> - S3 method computing whether the feature flag is enabled
However, it is recommended to additionally include:
create_<YOUR_FEATURE_FLAG>_feature_flag - function that creates an instance of your feature flag (note: this function can be called however you want, this is just a suggestion)
is_<YOUR_FEATURE_FLAG_NAME> - function that returns TRUE if the passed object is an instance of the feature flag class (that we are currently defining)
Let’s start with a construction method that will use create a base feature flag, add the
number field to it and assign it to the proper class.
Next, we will create a function checking the class attribute of the object.
Finally, we define the
is_enabled function which checks whether the
number field of our flag is odd.
Now, let’s test if everything is working