mimir/source/logic/transfer/_factory.ts

32 lines
602 B
TypeScript
Raw Normal View History

2025-03-26 06:35:59 +00:00
namespace _mimir.transfer
{
/**
*/
export function get_logic(
target : _mimir.conf.type_target
) : type_logic
{
switch (target.kind) {
default: {
throw (new Error("unhandled transfer kind: " + target["kind"]));
break;
}
case "local": {
return {
"execute": (name, stamp, directory) => _mimir.transfer.local.execute(target.parameters, name, stamp, directory),
};
break;
}
case "borg": {
return {
"execute": (name, stamp, directory) => _mimir.transfer.borg.execute(target.parameters, name, stamp, directory),
};
break;
}
}
}
}