4 Protocol Examples
The following examples illustrate how a protocol client retrieves and updates data on a protocol server by using this protocol. The example scenario is a book store that has a catalog of books. Each book within that catalog has an identifier, title, author, and status.
In this scenario, the CSOM types listed in the following table are defined on the protocol server.
CSOM type |
CSOM type name (identifier) |
Description |
Properties |
Methods |
---|---|---|---|---|
BookStore |
SampleCode.BookStore (acc57e47-24b0-4400-b1c7-aa1cf3c9542d) |
A CSOM Object type that defines the book store, which contains a catalog. |
Catalog– A Catalog type that contains a static property specifying a catalog of books. |
None. |
Catalog |
SampleCode.Catalog (04a81e1b-a5b9-445d-97c0-681fe3f61189) |
A CSOM Object type that defines the catalog, which contains a collection of books. |
Books– A list of books. |
None. |
BookCollection |
SampleCode.BookCollection (4c456811-3967-4021-8d9f-237ebd9c1170) |
A CSOM Object type that defines a collection of books within a catalog. |
None. |
Add– Returns a Book type and adds a book to the collection. The only parameter is a BookCreationInformation object, which contains the title, author, publish date, and status of a book. GetById– Returns a Book type that represents the book with the specified book identifier. If the book does not exist, the protocol server returns CSOM null. The only parameter is a CSOM GUID that contains the book identifier of the book. |
Book |
SampleCode.Book (030f9ac0-5f2b-4422-9e32-bcdfc1a0c93a) |
A CSOM Object type that defines a specific book in a collection of books. |
Author– A CSOM String that contains the name of the author of the book.
Id– A CSOM String value that contains the identification number for the book.
PublishDate– A CSOM DateTime value that contains the date when the book was published.
Status– A Status type that contains the status of the book.
Title– A CSOM String that contains the title of the book. |
Update – Updates information about the book by saving the property values that are currently set for the book. This method does not define any parameters.
GetSampleStream – Get the sample content of the book. This method does not define any parameters..
UpdateSampleStream – Update the sample content of the book. The only parameter is a CSOM Stream that contains the sample content of the book. |
BookCreationInformation |
SampleCode.BookCreationInformation (dda98aeb-f87d-490f-9a61-be08644ad461) |
A CSOM value object type that contains information about a book to be added to the catalog for the book store. |
Author– A CSOM String that contains the name of the author of the book.
PublishDate– A CSOM DateTime value that contains the date when the book was published.
Status– A Status type that contains the status of the book.
Title– A CSOM String that contains the title of the book. |
None. |
Status |
|
A CSOM enumeration type that specifies whether a book is in stock. If a book is in stock, this value is "0" (zero). If a book is out of stock, this value is "1". If a book is on back order, this value is "2". |
None. |
None. |
In the examples, the catalog contains the following books.
Identifier |
Title |
Author |
Status |
Publish date |
---|---|---|---|---|
3387ac63-e73d-421f-bff7-359a4aa2bc38 |
How to Cook Chinese Food |
Soha Kamal |
0 |
March 1, 2008 |
f6a265ab-86e5-4fbf-937c-49923604b91d |
How to Cook Japanese Food |
Soha Kamal |
1 |
May 5, 2007 |
2e80eb25-b64a-4506-b87b-2fff6ddb3f57 |
Best Recipes |
Lisa Andrews |
0 |
January 3, 2009 |
704655a3-c136-469c-a578-f79652a93f9b |
Family Recipes |
Patrick Hines |
0 |
December 1, 2005 |