SAIF.NetCore.ServiceContracts API reference¶
This page lists all public types exposed by SAIF.NetCore.ServiceContracts. Each type links to its full API reference page. Every type in this library compiles to the single namespace SAIF.NetCore.Services.Contracts; the groupings below are editorial categories only, not separate namespaces.
Types¶
Core contracts¶
| Type | Kind | Namespace | Purpose |
|---|---|---|---|
| ExternalUser | Class | SAIF.NetCore.Services.Contracts |
Carry external-user account flags and lifecycle dates (disable date, last logon, profile update, test-user expiration, email-verification expiration) returned by the SecurityAPI's external-data endpoint. |
| ExternalUserType | Class | SAIF.NetCore.Services.Contracts |
Describe an external user's type code/description and associated customer and credential linkage, plus steward/admin flags. |
| HttpClientOptions | Class | SAIF.NetCore.Services.Contracts |
Hold the default retry/serializer/header-persistence configuration applied to a new IHttpJsonClient. |
| HttpClientSerializer | Enum | SAIF.NetCore.Services.Contracts |
Distinguish between the framework-default serializer and an explicit Newtonsoft.Json opt-in. |
| IDBConnectionClient | Interface | SAIF.NetCore.Services.Contracts |
Resolve a connection string for a named SQL Server, Oracle, or PostgreSQL instance without the caller needing to know credential or connection-string formatting details. |
| IEnvironmentClient | Interface | SAIF.NetCore.Services.Contracts |
Expose plain and secure setting retrieval, both synchronous and asynchronous, typed and string, with or without a section qualifier. |
| IHttpJsonClient | Interface | SAIF.NetCore.Services.Contracts |
Issue synchronous and asynchronous HTTP verb calls (Delete/Get/Patch/Post/Put) that return IHttpRequestResult. |
| IHttpRequestResult | Interface | SAIF.NetCore.Services.Contracts |
Expose the raw response (Content, Headers, StatusCode, StatusDescription, ResponseDate, LastRequestUrl) and error information (ErrorException, ErrorMessage). |
| IIdentityService | Interface | SAIF.NetCore.Services.Contracts |
Expose the current user's identity, claims, and authentication state. |
| IIdentityServiceAccessor | Interface | SAIF.NetCore.Services.Contracts |
Provide a single injection point that resolves to the correct IIdentityService implementation for the current authentication scheme. |
| ISaifLogService | Interface | SAIF.NetCore.Services.Contracts |
Bind a logger instance to its runtime dependencies in a single Configure call before any logging method on ISaifLoggable can be used. |
| ISaifLoggable | Interface | SAIF.NetCore.Services.Contracts |
Provide severity-leveled logging methods (Debug/Info/Warning/Error/Fatal), each with message-only, message-and-exception, and property-value-array overloads, every one returning a log-entry ID for correlation. |
| ISaifWindowsServiceLogService | Interface | SAIF.NetCore.Services.Contracts |
Bind a logger instance to IEnvironmentClient and a logging IHttpJsonClient for non-web (Windows service) hosts. |
| IStandardErrorLogInfo | Interface | SAIF.NetCore.Services.Contracts |
Provide a correlation ID, the error source, message, stack trace, and free-form log details common to both web and Windows-service error logging. |
| ISystemHashService | Interface | SAIF.NetCore.Services.Contracts |
Compute and cache a SHA256-based system hash for a given SystemType/system name*. |
| IUserGroup | Interface | SAIF.NetCore.Services.Contracts |
Describe an AD group's name, security classification, description, distinguished name, and scope. |
| IUserProfile | Interface | SAIF.NetCore.Services.Contracts |
Describe a user's identifier, domain, account-state flags, and group memberships for authorization and display purposes. |
| IWebErrorLogInfo | Interface | SAIF.NetCore.Services.Contracts |
Combine standard error identity with full web-request context into a single loggable shape for web-hosted errors. |
| IWebRequestLogInfo | Interface | SAIF.NetCore.Services.Contracts |
Capture request metadata (URI, method, headers, body, client identity/claims) for logging and diagnostics. |
| IWindowsServiceError | Interface | SAIF.NetCore.Services.Contracts |
Carry the exception instance and its type names alongside the shared IStandardErrorLogInfo fields. |
| LogLevel | Enum | SAIF.NetCore.Services.Contracts |
Classify log entries by severity for threshold filtering and routing. |
| LoggerType | Enum | SAIF.NetCore.Services.Contracts |
Identify which backing log store/channel a log entry targets. |
| SystemType | Enum | SAIF.NetCore.Services.Contracts |
Distinguish host application categories so secure settings and system hashes can be scoped correctly per host type. |
| UserGroup | Class | SAIF.NetCore.Services.Contracts |
Provide a default, directly-constructible implementation of IUserGroup. |
| UserProfile | Class | SAIF.NetCore.Services.Contracts |
Provide a default, directly-constructible implementation of IUserProfile for callers that do not need a custom profile shape. |
OIDC-related contracts¶
| Type | Kind | Namespace | Purpose |
|---|---|---|---|
| CharacterCasing | Enum | SAIF.NetCore.Services.Contracts |
Describe the three casing policies a URL-casing middleware can enforce. |
| IClaimTransformCacheService | Interface | SAIF.NetCore.Services.Contracts |
Record and query whether claim transformation has already been performed for a given subject within the current cache window (governed by IOidcSettings.RoleTransformCacheOffset*). |
| IDataProtectionCertService | Interface | SAIF.NetCore.Services.Contracts |
Retrieve the certificate used to encrypt/decrypt Data Protection keys for this application. |
| IJwtAuthorizationCookieClaimService | Interface | SAIF.NetCore.Services.Contracts |
Persist new or refreshed JWT token values (ID token, access token, expiry) into the current authentication cookie. |
| IJwtRefreshService | Interface | SAIF.NetCore.Services.Contracts |
Exchange a refresh token (plus client credentials) for a new access/ID token pair. |
| ILoginRedirectService | Interface | SAIF.NetCore.Services.Contracts |
Redirect the current request to the configured identity provider login endpoint, optionally carrying additional query-string parameters. |
| IOidcSettings | Interface | SAIF.NetCore.Services.Contracts |
Expose every OIDC/cookie/data-protection setting needed to configure the OIDC authentication pipeline in one contract, including an indexer for ad hoc key lookups. |
| IRoleClaimService | Interface | SAIF.NetCore.Services.Contracts |
Add role claims of a specified claim type to an authenticated principal. |
| IUrlCaseService | Interface | SAIF.NetCore.Services.Contracts |
Normalize or validate the casing of the current request's URL according to a configured CharacterCasing policy. |
| JwtSet | Class | SAIF.NetCore.Services.Contracts |
Carry a refreshed token pair and its expiration back to the caller for cookie or header updates. |
| OidcAppCredentials | Struct | SAIF.NetCore.Services.Contracts |
Parse and validate a clientId\|clientSecret formatted string into two readonly fields usable by OIDC client-registration code. |
Web error handling contracts¶
| Type | Kind | Namespace | Purpose |
|---|---|---|---|
| ExceptionEnum | Enum | SAIF.NetCore.Services.Contracts |
Let an IErrorHandlerHook implementation branch its handling logic based on the exception's category without a full type check. |
| HttpStatusCodeException | Class | SAIF.NetCore.Services.Contracts |
Let throwing code specify exactly which HTTP status code and content type the web error handler should return for this error. |
| IErrorHandleable | Interface | SAIF.NetCore.Services.Contracts |
Mark a service as an injectable error-handling hook so DynamicErrorHandler can discover and invoke it. |
| IErrorHandlerHook | Interface | SAIF.NetCore.Services.Contracts |
Receive error context (exception category, HttpContext, exception, status code, and accumulated log details) and perform custom handling logic. |
| SAIFException | Class | SAIF.NetCore.Services.Contracts |
Serve as the common base type for application-level exceptions thrown by implementation libraries. |
Windows service error handling contracts¶
| Type | Kind | Namespace | Purpose |
|---|---|---|---|
| BeginErrorHandlingEventArgs | Class | SAIF.NetCore.Services.Contracts |
Let a BeginErrorHandling subscriber inspect the exception/context and optionally mark the error as already handled or suppress special actions. |
| BeginHandlingEvent | Delegate | SAIF.NetCore.Services.Contracts |
Define the callback shape subscribers must implement to observe/modify the start of Windows-service error handling. |
| ErrorHandledEvent | Delegate | SAIF.NetCore.Services.Contracts |
Define the callback shape subscribers must implement to observe the final outcome of Windows-service error handling. |
| ErrorHandledEventArgs | Class | SAIF.NetCore.Services.Contracts |
Carry the final outcome of error handling (exception, handled flag, special-action results, and context) to ErrorHandled subscribers; the constructor assigns the supplied references as get-only properties without deep-copying them. |
| IErrorContextContainer | Interface | SAIF.NetCore.Services.Contracts |
Let error-handling code attach and later retrieve arbitrary context objects, either anonymously or by key. |
| IServiceTaskRunner | Interface | SAIF.NetCore.Services.Contracts |
Let a Windows service define a single long-running, cancellable background task with a display title. |
| ISpecialErrorAction | Interface | SAIF.NetCore.Services.Contracts |
Let a Windows service register custom remediation/notification logic that runs in response to specific errors. |
| ISpecialErrorAction |
Interface | SAIF.NetCore.Services.Contracts |
Let a special error action declare, via its generic parameter, which specific exception type it is meant to handle, without changing its runtime contract. |
| IWindowsServiceErrorHandler | Interface | SAIF.NetCore.Services.Contracts |
Drive a Windows service's error-handling pipeline: run configured special actions, honor shutdown-exempt exception types, and notify subscribers before and after handling. |
| ShutdownExemptExceptionType | Class | SAIF.NetCore.Services.Contracts |
Let a Windows service declare that errors of a specific exception type should not shut the service down, optionally narrowed by a predicate over the exception instance. |
| SigningKeyCacheStatus | Enum | SAIF.NetCore.Services.Contracts |
Describe the cache state of a signing-key lookup (intended for JWT signing-key caching, per the excluded ISigningKeysCache contract). |
| SpecialErrorActionResult | Class | SAIF.NetCore.Services.Contracts |
Record which special action ran, its title, its status, and any exception it produced. |
| SpecialErrorActionStatus | Enum | SAIF.NetCore.Services.Contracts |
Classify whether a special error action ran, succeeded, or failed. |
Related documentation¶
Note: Statements marked with
*were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with**could not be confirmed; treat as unknown until verified.
Sources¶
src/SAIF.NetCore.ServiceContracts/SAIF.NetCore.ServiceContracts/SAIF.NetCore.ServiceContracts/SAIF.NetCore.ServiceContracts.csproj