---
title: Client reference
summary: Complete reference for every contract operation this repository calls.
status: draft
owner: SAIF.Core documentation
last_reviewed: 2026-09-24
---

# Client reference

This page documents the one operation `WCFHost PDFService`† declares. `LoadCache` is invoked at the wrapper's own call site inside `PdfServiceProxy.GetImage`, through the generated `PDFServiceClient`, but no repository source constructs or calls `PdfServiceProxy` itself, so this operation is not reached end-to-end by any in-repository caller — see [Operation map](operation-map.md).

---

## LoadCache

Requests that the remote imaging-cache service load (and, if needed, schedule background processing for) a document image identified by sequence number, and returns the cached image bytes.

| Field | Value |
| --- | --- |
| **Operation** | `LoadCache` |
| **SOAP action** | `http://tempuri.org/IPDFService/LoadCache` |
| **Proxy member** | `PDFCacheResult LoadCache(PDFCacheArgs args)` (generated, `internal`) |
| **Input message** | `PDFCacheArgs` |
| **Output message** | `PDFCacheResult` |
| **Declared faults** | None declared |
| **Called by** | `PdfServiceProxy.GetImage(long imageSeqNum, int maxWaitTimeInSeconds = 10)` (`Services/SAIF.Services.Web.Proxies/PDFServiceProxy.cs:31-46`) |
| **Source** | `Services/SAIF.Services.Web.Proxies/PDFServiceProxy.cs:42` |

### Input message

| Part | Type | Required | Bound from | Purpose |
| --- | --- | --- | --- | --- |
| `ImageSeqNum` | long | Not stated in the WSDL | `imageSeqNum` parameter | The image to load |
| `DataEnvironment` | string | Not stated in the WSDL | `database` constructor argument | Target database environment |
| `CachePriority` | int | Not stated in the WSDL | Constant `10000` | Requests immediate retrieval, processing, and caching (per code comment) |
| `DataUser` | string | Not stated in the WSDL | Constant `"IMG"` | Data-user label sent in the payload |
| `WaitCacheEnabled` | bool | Not stated in the WSDL | Constant `true` | Enables server-side wait/retry |
| `WaitCacheRetryAttempts` | int | Not stated in the WSDL | `maxWaitTimeInSeconds` parameter (default 10) | Number of server-side retry attempts* |
| `WaitCacheRetryInterval` | int | Not stated in the WSDL | Constant `1000` | Retry interval in milliseconds |
| `IFN`, `ScheduleRequest`, `TowerID` | string / bool / long | Not stated in the WSDL | Not set | Left at their default values |

### Output message

The wrapper reads only `PDFCacheResult.File` and returns it to its own caller; `Result` (`LoadDocumentResult`) and `Messages` are read from the response but discarded.

| Part | Type | Consumed by the caller | Notes |
| --- | --- | --- | --- |
| `File` | base64Binary | Yes | Returned directly as `PdfServiceProxy.GetImage`'s return value |
| `Result` | `LoadDocumentResult` | No | In-band success/failure signal is not inspected; a value such as `Error_AccessDenied` or `Error_Processing` is silently ignored |
| `Messages` | `ArrayOfstring` | No | Diagnostic messages are not read |

### Faults

| Fault | Surfaces as | Handled at the call site |
| --- | --- | --- |
| Generic SOAP fault | `FaultException` / `CommunicationException`* | Not handled — no `try`/`catch` surrounds the call (`PDFServiceProxy.cs:42`); the exception propagates |

### Call site

```csharp
var result = client.LoadCache(new PDFCacheArgs
{
    ImageSeqNum = imageSeqNum,
    DataEnvironment = _database,
    CachePriority = 10000,
    DataUser = "IMG",
    WaitCacheEnabled = true,
    WaitCacheRetryAttempts = maxWaitTimeInSeconds,
    WaitCacheRetryInterval = 1000
});
return result.File;
```

| Aspect | Finding |
| --- | --- |
| Invocation frequency | Not determined from source — no in-repository caller exists |
| Result cached | No |
| Timeout at this call site | None — binding defaults apply |
| Retry at this call site | None (client-side); the request asks the server to retry internally via `WaitCacheRetryAttempts` |

### Notes
- A null `result` from the generated client would throw a `NullReferenceException` at `result.File` — there is no null check*.
- No repository source calls `PdfServiceProxy.GetImage`, so this operation, while present in source, is not reached end-to-end in this repository*.

---

## Coverage checklist

| Operation | Documented section | Called by |
| --- | --- | --- |
| `LoadCache` | [`LoadCache`](#loadcache) | `PdfServiceProxy.GetImage` |

## Related documentation
- [Client index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Contract](contract.md)
- [Operation map](operation-map.md)
- [Consumption](consumption.md)
- [Dependencies](dependencies.md)
- [Tech debt](tech-debt.md)

> **Note:** Statements marked with `†` are derived from dependency library
> documentation via the Legends CLI. Statements marked with `*` were inferred
> from code structure or contextual evidence.

## Sources
- `Services/SAIF.Services.Web.Proxies/PDFServiceProxy.cs`
- `Services/SAIF.Services.Web.Proxies/Service References/PDFService/PDFService.wsdl`
- `Services/SAIF.Services.Web.Proxies/Service References/PDFService/Reference.cs`
