5. Source Documentation - Gluzberg/cart-client GitHub Wiki

Content


Projects

Interfaces Projects

CartClient.Models

  • Defines interfaces of the data models for the client parameters and results:
    • ICredentialsInof - Login parameter
    • IAuthorizartionInfo - Token result
    • ICartInfo - Cart ID and a collection of IProductInfo
    • IProductInfo - Product ID and and its amount

CartClient.Services

  • Defines interfaces of the main services of the client:
    • ICartService - the main service of the client library for managing of the cart which is described in 2. API Client Library.
    • ITokenService - Token issuing
    • IConfigurationService - Configuration retrieving service, shall be implemented according to application type.

Implementation Projects

CartClient.Models.Imp

CartClient.Services.Imp

  • Implementation of the services in CartClient.Services:
    • CartService - managing of the cart using the api/cart API calls and takes care of the token retrieval using ITokenService.
    • TokenService - Token issuing using the POST api/token API call.
  • The IConfigurationService service is not implemented here as it shall be implemented according to application type.

Utilities Projects

CartClient.Request

  • Simple library for handling of web requests and the direct deserialization of their responses.

Demo Projects

CartClient.Demo

  • Simple console demo application which is described here: 3. Console Demo.

CartClient.Demo.Web

  • Simple console demo application which is described here: 4. Web-Application Demo.

    CartClient.Demo.Web.Models

    • Defines interfaces of the data models for the demo catalog:
      • IProduct - Catalog Products details including name and price.

    CartClient.Demo.Web.Services

    • Defines interfaces of the demo catalog service:

    • ICatalogService