Service - Sell Offer Manager: Difference between revisions

From Izara Wiki
Jump to navigation Jump to search
Line 56: Line 56:
* partition key: sellOfferId
* partition key: sellOfferId
* sort key: (none)
* sort key: (none)
== LogicalResults ==
Stores results for any requests to perform logical searches on sell offer data
<syntaxhighlight lang="JavaScript">
{
resultId: xxx // eg: filterMainId for a single logical element
dataId: xxx // one productId
}
</syntaxhighlight>
* partition key: resultId
* sort key: dataId


== TranslateIdsCache ==
== TranslateIdsCache ==

Revision as of 13:58, 5 July 2021

Overview

Each sell offer is handled by a Service - Sell Offer (handlers) service.

The Sell Offer Manager service handles shared orchestration of the Sell Offer Handler services.

Repository

https://bitbucket.org/izara-market-products/izara-market-products-sell-offer-manager/src/master/

DynamoDB tables

Standard Config Table Per Service

Configuration tags

{
	configKey: "ProductsGraphServiceName"
	configTag: "ProductsGraphServiceName"
	configValue: xxx // eg: "ProductsGraph"
}
{
	configKey: "SellOfferHandlerService"
	configTag: xxx // sellOfferHandlerServiceNameTag, eg: "SellOfferStandard", this is what is saved in each catalog record
	configValue: {
		serviceName: xxx // eg: "SellOfferStandard", this is the actual deployed service name}
	}
}
{
	configKey: "TranslateIdsType"
	configTag: xxx // eg SellOffer > Product would be sellOffer_product
	configValue: {
		ttl: 64000 // number of seconds TranslateIdsCache records live for
	}
}

SellOffers

Records which Handler manages each sell offer

{
	sellOfferId
	sellOfferHandlerServiceNameTag
}
  • partition key: sellOfferId
  • sort key: (none)

TranslateIdsCache

Stores a record for any unique translateId process

{
	cacheId // fromType + "_" + fromDataId + "_" + toType
	toDataId
	expireTime
}
  • partition key: cacheId
  • sort key: toDataId
  • expireTime is set as an automatic DynamoDB TTL attibute

Working documents

Sell Offer Manager