Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 7 additions & 4 deletions src/frameworks/feature-toggle/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Datamodellen ligger i pakken [platform-data-model](src/platform-data-model/READM
| | |
| ---- | --- |
| Apex | ✅ |
| LWC | |
| LWC | |
| Flow | ✅ |

## Hvordan ta i bruk
Expand All @@ -17,16 +17,18 @@ Denne kan brukes på to nivåer, individuell eller generell.

Feature toggle customMetadata innslag og customPermissions legges i de pakkene hvor de brukes.

![Bilde viser opprettelse av et nytt feature flag](../../../resources/img/feature-toggle_new_myFeatureFlag.png "Nytt Feature Flag")

**Generell:**
Det man ønsker å enkelt kunne skru en feature på eller av. Opprett en custom metadata feature toggle og aktiver/deaktiver den ved å benytte `Is_Enabled__c` flagget.
Det man ønsker å enkelt kunne skru en feature på eller av. Opprett en custom metadata feature toggle og aktiver/deaktiver den ved å benytte Is Enabled (`Is_Enabled__c`) flagget.
I koden sjekker man på `isFeatureEnabled(<developername til gitt feature>)`. Dette vil da gjelde for all logikk som kjører koden.

**Individuell:**
**Individuell/gruppe:**
Her kan man velge å bruke enten `customPermission` eller en kombinasjon av `Feature_Flag__mdt` og `customPermission`.

Ved bruk av bare `customPermission` oppretter man en custom permission og legger den til et Permission Set som tildeles den eller de som trenger tilgangen.

Ved bruk av en kombinasjon så opprettes det et custom permission som tildeles via Permission Set slik som over. I tillegg opprettes det et `Feature_Flag__mdt` record hvor customPermission api navnet legges til i `Required_Custom_Permission__c`. `Is_Enabled__c` flagget benyttes som vanlig til å toggle featuren av og på.
Ved bruk av en kombinasjon så opprettes det et custom permission som tildeles via Permission Set slik som over. I tillegg opprettes det et `Feature_Flag__mdt` record hvor customPermission api navnet legges til i Required Custo Permission (`Required_Custom_Permission__c`). Is Enabled (`Is_Enabled__c`) flagget benyttes som vanlig til å toggle featuren av og på.

**Eksempel på direkte bruk:**

Expand Down Expand Up @@ -82,6 +84,7 @@ public with sharing MyClass extends FeatureToggleBase {

- [platform-datamodel](src/platform-data-model/feature-flag-custom-metadata) - datamodell
- [custom-metadata-dao](src/platform-utility/custom-metadata-dao) - Abstraksjon av custom metadata
- [custom-permission-helper](src/platform-utility/custom-permission-helper) - Hjelpe klasse for å kunne mocke og validere custom permissions

```mermaid
---
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
* @since 0.1.0, March 2025
* @group Custom Permission Helper
* @example
* Eksempel på bruk:
* ```
* Set<String> myCustomPermissionsSet = new CustomPermissionHelper().setCustomPermissionMaps().getAssignedCustomPermissions();
* ```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,17 @@
* CustomPermissionHelper class for testing
* @author Tor Håkon Sigurdsen
* @since 0.1.0, March 2025
* @group Custom Permission Helper
* @example
* ```
* CustomPermissionHelperStub stub = new CustomPermissionHelperStub();
* stub.addHasCustomPermission(true);
* stub.addValidateCustomPermissionResult(true);
* CustomPermissionHelper mock = stub.getMock();
* CustomPermissionHelper cph = new CustomPermissionHelper();
* cph.hasCustomPermission('MyCustomPermission');
* cph.validateCustomPermission('MyCustomPermission');
* ```
*/
@IsTest
public with sharing class CustomPermissionHelperStub implements System.StubProvider {
Expand Down