Skip to content

Advanced usage: Change database asset mapping

Boia Alexandru edited this page Mar 17, 2023 · 1 revision

The following mapping properties can be changed:

  • queue table name (defaults to sk_tasks_queue_t);
  • results queue table name (defaults to sk_task_results_t);
  • execution time stats table name (defaults to sk_task_execution_time_stats_t);
  • metrics table name (defaults to sk_metrics_t);
  • new task notification channel name (defaults to sk_task_queue_item_added);
  • dequeue function name name (defaults to sk_try_dequeue_task).

To alter the mapping, simply call IStakhanoviseSetup.WithTaskQueueMapping() during setup:

await Stakhanovise
	.CreateForTheMotherland()
	.SetupWorkingPeoplesCommittee(setup => 
	{
		// Manually set all properties	that you need
		setup.WithTaskQueueMapping(new QueuedTaskMapping() 
		{
			QueueTableName = "...",
			ResultsQueueTableName = "...",
			ExecutionTimeStatsTableName = "...",
			MetricsTableName = "...",
			NewTaskNotificationChannelName = "...",
			DequeueFunctionName = "..."
		});

		// Or just alter the table prefix (this only affects table DB objects)
		setup.WithTaskQueueMapping(QueuedTaskMapping
			.Default
			.AddTablePrefix("prfx_"));
	})
	.StartFulfillingFiveYearPlanAsync();