Skip to content

Commit 5314fd8

Browse files
feat(policies): add Policy CRUD methods for Unified Policy Architecture (#9)
* feat(policies): add Policy CRUD methods for Unified Policy Architecture Add comprehensive policy management methods to the Java SDK as part of the Unified Policy Architecture v2.0.0 (Phase 10 - SDKs). Static Policies: - listStaticPolicies() with filtering options - getStaticPolicy(), createStaticPolicy(), updateStaticPolicy() - deleteStaticPolicy(), toggleStaticPolicy() - getEffectiveStaticPolicies(), testPattern(), getStaticPolicyVersions() Policy Overrides (Enterprise): - createPolicyOverride(), getPolicyOverride(), deletePolicyOverride() Dynamic Policies: - listDynamicPolicies() with filtering options - getDynamicPolicy(), createDynamicPolicy(), updateDynamicPolicy() - deleteDynamicPolicy(), toggleDynamicPolicy() - getEffectiveDynamicPolicies() New types in PolicyTypes.java: - PolicyCategory, PolicyTier, PolicyAction, OverrideAction enums - StaticPolicy, DynamicPolicy, PolicyOverride models - CreateStaticPolicyRequest, UpdateStaticPolicyRequest builders - CreateDynamicPolicyRequest, UpdateDynamicPolicyRequest builders - ListStaticPoliciesOptions, ListDynamicPoliciesOptions - TestPatternResult, PolicyVersion Tests: 38 tests covering all methods and type validation Part of: Epic #724 - Unified Policy Architecture v2.0.0 * fix: correct API endpoints and remove non-existent getPolicyOverride - Remove getPolicyOverride() method (no GET endpoint in backend) - Change /api/v1/dynamic-policies to /api/v1/policies for all dynamic policy methods - Update tests to reflect API changes * fix: code review fixes for policy CRUD - Fix testPattern endpoint from /test-pattern to /test - Add sortBy, sortOrder, search fields to ListDynamicPoliciesOptions - Update buildDynamicPolicyQueryString to use new fields * fix(policies): fix severity type, response parsing, and X-Tenant-ID header - Add PolicySeverity enum (critical/high/medium/low) - Change severity from int to PolicySeverity in StaticPolicy, CreateStaticPolicyRequest, UpdateStaticPolicyRequest - Add tier field to CreateStaticPolicyRequest with default TENANT - Fix TestPatternResult to use 'matches' instead of 'results' - Add pattern and inputs fields to TestPatternResult - Fix testPattern to send 'inputs' instead of 'test_inputs' - Add X-Tenant-ID header for policy APIs using clientId - Add StaticPoliciesResponse and EffectivePoliciesResponse wrappers - Fix listStaticPolicies to parse {policies: []} wrapper response - Fix getEffectiveStaticPolicies to parse {static: [], dynamic: []} wrapper * fix(tests): change getResults() to getMatches() in TestPatternResult * fix(tests): use PolicySeverity enum instead of integers - Update SAMPLE_STATIC_POLICY to use 'critical' string - Use PolicySeverity.CRITICAL/HIGH in request builders - Fix UpdateStaticPolicyRequest assertions * fix(tests): fix mock response formats and severity type - Use wrapped response format for list and effective APIs - Change 'results' to 'matches' in testPattern mock - Use PolicySeverity.MEDIUM for default severity assertion
1 parent 174c8b2 commit 5314fd8

3 files changed

Lines changed: 2150 additions & 0 deletions

File tree

0 commit comments

Comments
 (0)