5. Service Provider Interface (SPI) Functions

The service provider functions are described in the following sections, in alphabetical order. The table below shows the SPI functions, the sections in which they are defined, their modes, and the API functions they implement.

Section WOSA/XFS SPI Mode WOSA/XFS API Mode
5.1 WFPCancelAsyncRequest Immediate WFSCancelAsyncRequest Immediate
5.1 WFPCancelAsyncRequest Immediate WFSCancelBlockingCall Immediate
(none) - WFSCleanUp Synchronous
5.2 WFPClose Asynchronous WFSClose Synchronous
5.2 WFPClose Asynchronous WFSAsyncClose Asynchronous
(none) - WFSCreateAppHandle Immediate
5.3 WFPDeregister Asynchronous WFSDeregister Synchronous
5.3 WFPDeregister Asynchronous WFSAsyncDeregister Asynchronous
(none) - WFSDestroyAppHandle Immediate
5.4 WFPExecute Asynchronous WFSExecute Synchronous
5.4 WFPExecute Asynchronous WFSAsyncExecute Asynchronous
(none) - WFSFreeResult Immediate
5.5 WFPGetInfo Asynchronous WFSGetInfo Synchronous
5.5 WFPGetInfo Asynchronous WFSAsyncGetInfo Asynchronous
(none) - WFSIsBlocking Immediate
5.6 WFPLock Asynchronous WFSLock Synchronous
5.6 WFPLock Asynchronous WFSAsyncLock Asynchronous
5.7 WFPOpen Asynchronous WFSOpen Synchronous
5.7 WFPOpen Asynchronous WFSAsyncOpen Asynchronous
5.8 WFPRegister Asynchronous WFSRegister Synchronous
5.8 WFPRegister Asynchronous WFSAsyncRegister Asynchronous
(none) - WFSSetBlockingHook Immediate
5.9 WFPSetTraceLevel Immediate (none) -
(none) - WFSStartUp Immediate
(none) - WFSUnhookBlockingHook Immediate
5.10 WFPUnloadService
5.11 WFPUnlock Asynchronous WFSUnlock Synchronous.
5.11 WFPUnlock Asynchronous WFSAsyncUnlock Asynchronous

Note that in this section device drivers and devices are mentioned frequently, instead of service providers and services. This is due primarily to the fact that access to financial peripheral devices is the first category of financial services being addressed by the BSVC. However, note that in the future other financial services will be part of the WOSA Extensions to Financial Services, and will also use these interfaces, with additions as necessary. See Appendix A for more on this subject.