SAIF.Services.WCF.UC4.Host overview¶
This host exposes UC4 job-invocation capability to SOAP callers: it accepts a caller-supplied job name (with optional parameters, supplied as a JSON string, positional values, or key/value pairs), checks the job against an environment-scoped allow/deny rule list, and forwards allowed jobs to a downstream UC4 scheduling service under the service account's identity. SAIF.Services.WCF.UC4.Host is the only host in this repository that registers this service; no other host in Framework.CoreServices.WCF registers UC4Service or the UC4 route.
Purpose¶
- Accept a job-execution request from a caller, identifying the target environment either by a
UC4Environmentenum value (four obsolete operation forms) or by ashortclient id (four current operation forms). - Gate the request against an environment-scoped allow/deny rule document (
uc4.rules) before forwarding it. - Forward allowed jobs, with their parameters expressed as JSON, positional values, or key/value pairs, to a downstream UC4 scheduling service, and map the downstream result onto the published
UC4Resultcontract type.
Business context¶
This host participates in job scheduling for the UC4 enterprise job scheduler. It is a pass-through policy-and-adaptation layer: the scheduling itself belongs entirely to the downstream service reached through uc4coreapi.url, and this host owns only the allow/deny gate and the protocol adaptation from SOAP to the packaged downstream client. It performs no database access and owns no persisted record.*
| Attribute | Value |
|---|---|
| Business domain | Job scheduling (UC4) |
| Owning team | Not determined from source |
| Data ownership | None — this host owns no persisted record; the uc4.rules allow/deny document lives in the environment settings service, and job execution state lives entirely in the downstream UC4 scheduling service |
| Criticality | Not determined from source |
Capability summary¶
| Capability | Service class | Operations | Description |
|---|---|---|---|
| Job invocation, no parameters | UC4Service |
ExecuteJob (obsolete), ExecuteJobWithClientId |
Invokes a job with no caller-supplied parameters |
| Job invocation, JSON parameters | UC4Service |
ExecuteJobWithJson (obsolete), ExecuteJobWithJsonAndClientId |
Invokes a job with parameters supplied as a single JSON-encoded string |
| Job invocation, positional values | UC4Service |
ExecuteJobWithValues (obsolete), ExecuteJobWithValuesAndClientId |
Invokes a job with parameters supplied as an ordered list, named arg1, arg2, and each subsequent positional argument name in call order |
| Job invocation, key/value parameters | UC4Service |
ExecuteJobWithParameters (obsolete), ExecuteJobWithParametersAndClientId |
Invokes a job with parameters supplied as named key/value pairs |
The eight operations are four job-invocation forms crossed with two identity modes (UC4Environment enum, short client id); SOAP has no overload resolution on the wire, so each is its own operation. The four enum-typed forms are [Obsolete] and delegate to their corresponding AndClientId operation — see Business rules.
Message format¶
| Aspect | Finding |
|---|---|
| Message encoding | No <endpoint> is configured; System.ServiceModel.Activation.ServiceHostFactory applies WCF protocol mapping, which maps the http scheme to basicHttpBinding by default* |
| Serializer | Not determined from source — no binding or contract configuration was found to confirm DataContractSerializer versus XmlSerializer** |
| Message size limits | maxReceivedMessageSize = 2147483647; maxStringContentLength = 5242880 — this bounds the largest single string element a caller may send, which directly constrains the JSON-parameter operations (ExecuteJobWithJson, ExecuteJobWithJsonAndClientId), since jsonKeyValuePairs is a single string element |
| Metadata document | ?wsdl published (<serviceMetadata httpGetEnabled="true"/>, Web.config) |
Related documentation¶
- Index
- Architecture
- Activation and hosting
- Operations
- Faults and error pipeline
- Authentication and authorization
- Dependencies
- Configuration
- Operations and processes
- Business rules
- Operational runbook
- Tech debt
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/WCF/SAIF.Services.WCF.UC4.Host/UC4Service.cssrc/WCF/SAIF.Services.WCF.UC4.Host/Uc4Client.cssrc/WCF/SAIF.Services.WCF.UC4.Host/Global.asax.cssrc/WCF/SAIF.Services.WCF.UC4.Host/Web.config