presented by: sif3: providers joerg huber sif3 providers: source of truth
TRANSCRIPT
© Systemic Pty LtdSeptember 2014
Training Course - Sydney: SIF3: Providers
2Overview
What is an Object Provider? What is it responsible for? Source of Truth DIRECT vs. Brokered Object Provider
Object Providers and SIF3 Frameworks Basic steps to develop an Object Provider
© Systemic Pty LtdSeptember 2014
Training Course - Sydney: SIF3: Providers
3What is an Object Provider A ‘Server’ in the traditional sense. Will require web- or application server Can be very simple (Brokered) or may have
some complexity (DIRECT) It typically responds to CRUD requests:
Create, Read/Get, Update & Delete Objects (i.e. Students)
It can publish Events if events are required. An Object Provider is considered the
“source of truth”, meaning CRUD requests might be rejected by the provider!
© Systemic Pty LtdSeptember 2014
Training Course - Sydney: SIF3: Providers
4Responsibility of an (Object) Provider
Respond to CRUD requests from consumers. Maintain RefIDs!
Allocate for ‘Create’ request. Accept from ‘Create’ requests (mustUseAdvisory) Ensure they are syntactically valid
DIRECT Environment An Object Provider is also an Environment Provider Provide an environment connector and maintain
environments. Manage consumer sessions
Events (most likely in a brokered environment only) Send appropriate events if the data store the
provider is responsible for is altered.
© Systemic Pty LtdSeptember 2014
Training Course - Sydney: SIF3: Providers
5Source of TruthAn Object Provider is consider the Source of Truth for all data objects it provides. Consumers can request changes but Object
Provider may reject them. Ensure that consumers deal with rejected requests.
Object Provider is responsible to maintain RefIDs Brokered Environment: Events
Responsible to publish events if data store is altered. Keeps consumers in sync with “Source of Truth”
DIRECT Environment: Events Most likely not supported. SIF Specification does not
require a DIRECT environment to support events. Consumer may need to sync all data from time to time to
stay in tune with the “Source of Truth”.
© Systemic Pty LtdSeptember 2014
Training Course - Sydney: SIF3: Providers
6DIRECT vs. Brokered Provider
Direct Brokered
Object Provider Yes Yes
Environment Provider Yes No
Maintain Sessions for Consumers Yes No
Events supported Optional1) Yes
Delayed Request/Response supported Optional1) N/A2)
RefID Management (Object Provider) Yes Yes
Source of Truth Yes Yes
1)If required then Queue Connector, Queue Management, Event Connector, message routing, consumer connection management must be implemented. Lot’s of work!2)Does not see if request is DELAYED. Broker will maintain this state! Object Provider only deals with Immediate Request/Response.
© Systemic Pty LtdSeptember 2014
Training Course - Sydney: SIF3: Providers
7Providers & SIF3 Frameworks
Java .Net
Object Provider Framework - CRUD Yes Yes
Acts as DIRECT Environment Provider Yes Yes
Brokered Connections supported Yes No1)
Events supported Yes No1)
Delayed Request/Response supported No1) No1)
Service Path Support No1) No1)
1)Future extensions expected
© Systemic Pty LtdSeptember 2014
Training Course - Sydney: SIF3: Providers
8Steps developing an Object Provider Chose a Data Model (i.e. SIF AU 1.3) Chose the SIF Objects the Provider deals with. DIRECT Environment
Manage Environments (next exercise) What do I need to tell consumers (i.e. Application Key,
Password, Base URI etc.). Brokered Environment?
What is the Base URI to the Broker? What is my Application Key, Password? Event support required
Finally… Implement Object Providers
=> Next Session… Exercise