File

libs/acl/angular/src/lib/inspector/inspector.service.ts

Index

Properties
Methods
Accessors

Constructor

constructor(aclService: AclService)
Parameters :
Name Type Optional
aclService AclService No

Methods

addRule
addRule(rule: AclRule)
Parameters :
Name Type Optional
rule AclRule No
Returns : void
Public open
open()
Returns : void

Properties

_openSignal
Default value : new Subject<void>()
aclDecisionLog
Type : AclDecision[]
Default value : []
Public aclService
Type : AclService
showAclHints$
Default value : new BehaviorSubject(false)

Accessors

openSignal
getopenSignal()
import { Injectable } from '@angular/core';
import { BehaviorSubject, Subject } from 'rxjs';
import { AclService } from '../services/acl.service';
import { AclDecision, AclRule } from '@allianz/taly-acl';

@Injectable()
export class AclInspectorService {
  constructor(public aclService: AclService) {
    this.aclService.aclEngine.listen((decision) => {
      this.aclDecisionLog.unshift(decision);
      // trim list for performance
      this.aclDecisionLog.splice(500, 1);
    });
  }
  _openSignal = new Subject<void>();

  showAclHints$ = new BehaviorSubject(false);
  aclDecisionLog: AclDecision[] = [];

  public open() {
    this._openSignal.next();
  }

  addRule(rule: AclRule) {
    this.aclService._addGlobalRule(rule);
  }

  get openSignal() {
    return this._openSignal.asObservable();
  }
}

results matching ""

    No results matching ""