Versions in this module Expand all Collapse all v0 v0.0.1 Nov 4, 2025 Changes in this version + var Lex = lexer.MustSimple([]lexer.SimpleRule{ ... }) + var URIPattenRegexp = regexp.MustCompile(uriPattrn) + func CompareValueAddIfAzure(target reflect.Value, targetCharacs *scimtag.Characteristics, op string, ...) (bool, error) + func CreateResourceHelper[T Resource](r *http.Request, scimID string, ...) (nvelope.Response, error) + func EvalHelper(e Expression, p *Node, objV reflect.Value, ...) (bool, error) + func GetFilteredResources[T Resource](filter *OrExpression, inputs []T) ([]T, error) + func GetListResourceHelper[T Resource](r *http.Request, trace util.Trace, itemsPerPage int, scimID string, ...) (nvelope.Response, error) + func GetResourceHelper[T Resource](r *http.Request, scimID string, resourceID string, ...) (nvelope.Response, error) + func GetSCIMDataType(t reflect.Type, scimAttrName string) (string, error) + func GetSchemasHelper(resourceTypes []ResourceType, itemsPerPage int) (nvelope.Response, error) + func Marshal(obj any) ([]byte, error) + func MarshalWithSelectedAttr(obj any, selectedAttr []string, excludeSelected bool) (_ []byte, err error) + func Patch(objV reflect.Value, path *Node, op string, value []byte) error + func PatchResourceHelper[T Resource](r *http.Request, scimID string, resourceID string, ...) (nvelope.Response, error) + func SCIMRouter(tracer util.Trace, server Server) func(*nchi.Mux) + func Unmarshal(data []byte, obj any) (err error) + func UpdateResourceHelper[T Resource](r *http.Request, scimID string, resourceID string, ...) (nvelope.Response, error) + type AndTerm struct + Left Expr + Right []Expr + func (e AndTerm) RedactedString() string + func (e AndTerm) String() string + func (e AndTerm) ToSqlizer(sg SQLGenerator, not bool) (sq.Sqlizer, error) + func (ot AndTerm) Eval(v reflect.Value, azureAdd bool) (bool, error) + type AttributeSchema struct + CanonicalValues *[]string + CaseExact *bool + MultiValued bool + Mutability scimtag.Mutability + Name string + ReferenceTypes []string + Required bool + Returned scimtag.Returned + SubAttributes []AttributeSchema + Type string + Uniqueness *string + type AuthType string + const AuthTypeOauthBearerToken + type AuthenticationScheme struct + Description string + DocumentationURI string + Name string + Primary bool + SpecURI string + Type AuthType + type Common interface + Eval func(v reflect.Value, azureAdd bool) (bool, error) + String func() string + ToSqlizer func(sg SQLGenerator, not bool) (sq.Sqlizer, error) + type Config struct + AuthenticationSchemas []AuthenticationScheme + BulkMaxOperations int + BulkMaxPayloadSize int + BulkSupported bool + ChangePassword bool + EtagSupported bool + FilterMaxResult int + FilterSupported bool + ItemsPerPage int + PatchSupported bool + SortSupported bool + func (r Config) MarshalSCIM(reqURL string) ([]byte, error) + type EndpointSCIMID struct + SCIMID string + type EndpointSCIMIDAndResourceID struct + ResourceID string + SCIMID string + type Expr interface + RedactedString func() string + type Expression struct + CompareOp string + Path Path + Value string + func (e Expression) Eval(v reflect.Value, azureAdd bool) (bool, error) + func (e Expression) RedactedString() string + func (e Expression) String() string + func (e Expression) ToSqlizer(sg SQLGenerator, not bool) (sq.Sqlizer, error) + type ListResponse struct + ItemsPerPage int + Resources []T + StartIndex int + TotalResults int + func (l ListResponse[T]) MarshalSCIM() ([]byte, error) + type MultiValueElement interface + type Node struct + Next *Node + Value any + type NotExpression struct + Group OrExpression + Not bool + func (ne NotExpression) RedactedString() string + func (ne NotExpression) String() string + func (ne NotExpression) ToSqlizer(sg SQLGenerator, not bool) (sq.Sqlizer, error) + func (sg NotExpression) Eval(v reflect.Value, azureAdd bool) (bool, error) + type OrExpression struct + Left *AndTerm + Right []*AndTerm + func ParseFilter(filterStr string) (*OrExpression, error) + func (le OrExpression) Eval(v reflect.Value, azureAdd bool) (bool, error) + func (oe OrExpression) RedactedString() string + func (oe OrExpression) String() string + func (oe OrExpression) ToSqlizer(sg SQLGenerator, not bool) (sq.Sqlizer, error) + type PatchOperation struct + Op string + Path string + Value json.RawMessage + func UnmarshalPatchRequest(data []byte) ([]PatchOperation, error) + type Path struct + AttrName string + Colon string + Filter *OrExpression + SubAttrName string + URI string + func ParsePath(pathStr string) (*Path, error) + func (p *Path) GetNodes(coreSchemaID string) *Node + func (p Path) String() string + type PrimaryDataType interface + SCIMCompareValue func(op string, stringValue string, azureAdd bool) (bool, error) + type Resource interface + type ResourceType struct + Description string + Endpoint string + ID string + Meta ResourceTypeMeta + Name string + ResourceObjectType reflect.Type + func (r ResourceType) MarshalSCIM() ([]byte, error) + type ResourceTypeMeta struct + Location string + ResourceType string + type SCIMConnectionErr error + type SCIMMarshaler interface + MarshalSCIM func() ([]byte, error) + type SCIMResourceMarker struct + type SCIMUnmarshaler interface + UnmarshalSCIM func([]byte) error + type SQLGenerator interface + Generate func(Common, bool) (sq.Sqlizer, error) + type Schema struct + Attributes []AttributeSchema + ID string + func GetResourceSchema(resourceT reflect.Type) (schemas []Schema, err error) + func (s Schema) MarshalSCIM() ([]byte, error) + type SchemaExtention struct + Required bool + Schema string + func GetSchemaURIFromResource(resourceT reflect.Type, resourceVforFilterEmpty *reflect.Value) (coreSchemaURI string, extensions []SchemaExtention, err error) + type Server interface + Authorization func(inner func() error, r *http.Request) error + BulkHandler func() (nvelope.Response, error) + DeleteResourceHandler func(r *http.Request, resourceType ResourceType, params EndpointSCIMIDAndResourceID) (nvelope.Response, error) + GetResourceHandler func(r *http.Request, resourceType ResourceType, params EndpointSCIMIDAndResourceID) (nvelope.Response, error) + GetResourceListHandler func(r *http.Request, resourceType ResourceType, params EndpointSCIMID) (nvelope.Response, error) + GetResourceTypes func() []ResourceType + GetResourceTypesHandler func() (nvelope.Response, error) + GetServiceProviderConfigHandler func(r *http.Request, w http.ResponseWriter) (nvelope.Response, error) + PatchResourceHandler func(r *http.Request, resourceType ResourceType, params EndpointSCIMIDAndResourceID) (nvelope.Response, error) + PostResourceHandler func(r *http.Request, resourceType ResourceType, params EndpointSCIMID) (nvelope.Response, error) + SchemasHandler func() (nvelope.Response, error) + UpdateResourceHandler func(r *http.Request, resourceType ResourceType, params EndpointSCIMIDAndResourceID) (nvelope.Response, error)