1.0.5 • Published 1 year ago

repo-spec v1.0.5

Weekly downloads
-
License
ISC
Repository
-
Last release
1 year ago

Repository and Specification

Repository Methods

The Repostitory ...

Service Methods

  • In add for adding one item
  • In update for update one item

Full Example:

import Product from "./models/product";
import ProductQueryFactory from "./services/factories/product.query.factory";
import ProductRepositoryFactory from "./services/factories/product.repository.factory";
import ProductByMaxPriceSpec from "./services/productData/querySpecs/product.by.max.price.spec";
import ProductByMinPriceSpec from "./services/productData/querySpecs/product.by.min.price.spec";
import ProviderEnum from "./services/shared/provider.enum";

let repository = ProductRepositoryFactory.create(ProviderEnum.Local);
let query = ProductQueryFactory.create(ProviderEnum.Local);

localStorage.clear();

//? Id Generation Strategy (Identity, Guid, HiLo, Custom)
repository.AddProduct(new Product(1, "p1", 100));
repository.AddProduct(new Product(2, "p2", 200));
repository.AddProduct(new Product(3, "p3", 300));
repository.AddProduct(new Product(4, "p4", 400));

const result1 = repository.GetProductById(2);

// console.log(result1);

//? mr.bardal@gmail.com

// let result2 = query.GetProductsByMinPrice(200);

// console.log(result2);

let result3 = query.GetProductsByPrice(200, 300);

console.log(result3);

// const byMinSpec = new ProductByMinPriceSpec(300);
// let r1 = byMinSpec.isSatisfiedBy(result1);

// const byMaxSpec = new ProductByMaxPriceSpec(100);
// let r2 = byMaxSpec.isSatisfiedBy(result1);

// console.log(r2);
1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago