Service - Media Manager: Difference between revisions

From Izara Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
Line 33: Line 33:
</syntaxhighlight>
</syntaxhighlight>


== Media ==
== MediaRecord ==


Records which Handler manages each media element
Records which Handler manages each media element

Latest revision as of 12:39, 4 February 2022

Overview

Each media type is handled by a Service - Media (handlers) service.

The Media Manager service handles shared orchestration of the Media Handler services.

Repository

https://bitbucket.org/izara-core-media/izara-core-media-media-manager/src/master/

DynamoDB tables

Standard Config Table Per Service

Configuration tags

{
	configKey: "MediaGraphServiceName"
	configTag: "MediaGraphServiceName"
	configValue: xxx // eg: "MediaGraph"
}
{
	configKey: "MediaHandlerService"
	configTag: xxx // mediaHandlerServiceNameTag, eg: "MediaStandard", this is what is saved in each media node
	configValue: {
		serviceName: xxx // eg: "ImageStandard", this is the actual deployed service name}
	}
}

MediaRecord

Records which Handler manages each media element

{
	mediaId
	mediaHandlerServiceNameTag
}
  • partition key: mediaId
  • sort key: (none)

Graph database

Service - Media Graph

Nodes

{
	nodeLabel: "media",
	schema: {
		identifier: true,
		restrictProperties: true,
		restrictRelationships: true,
		properties: {
			mediaId: {
				identifier: true, // create unique id from request details
			},
			mediaHandlerServiceNameTag: {
				immutable: true,
			},
		},
	}
}
{
	nodeLabel: "mediaPropertyLabel",
}
{
	nodeLabel: "mediaProperty",
}

Relationships

{
	relationshipType: "has_mediaProperty",
}
{
	relationshipType: "disabled_mediaProperty",
}
{
	relationshipType: "is_mediaPropertyLabel",
}

Basic node schemas

Schema comes from BasicNodeSchemaLib

  1. mediaPropertyLabel
  2. mediaProperty

Working documents

Media Manager