File: //volume1/@appstore/SynologyPhotos/sdk-plugin/synology_foto_share_mount_action.py
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Copyright (c) 2000 - present Synology Inc. All rights reserved.
from os import environ
from importlib.util import spec_from_file_location, module_from_spec
module_name = "common"
module_path = "/var/packages/SynologyPhotos/target/sdk-plugin/common.py"
spec = spec_from_file_location(module_name, module_path)
common = module_from_spec(spec)
spec.loader.exec_module(common)
class ShareMountAction(common.PluginRunner):
def __init__(self):
self._version = "2.0"
def pre(self):
if "0" != environ.get("RESULT"):
return None
action = environ.get("MOUNT_ACTION")
if action == "mount":
return None
share_name = environ.get("SHARE_NAME")
share_path = environ.get("SHARE_PATH")
is_package_running = self.is_package_running()
if not is_package_running:
return None
self.send_command(
"share-disable",
{
"origin_name": "",
"origin_path": "",
"name": share_name,
"path": share_path,
},
)
def post(self):
if "0" != environ.get("RESULT"):
return None
action = environ.get("MOUNT_ACTION")
if action == "unmount":
return None
share_name = environ.get("SHARE_NAME")
share_path = environ.get("SHARE_PATH")
is_package_running = self.is_package_running()
if not is_package_running:
return None
self.send_command(
"share-enable",
{
"origin_name": "",
"origin_path": "",
"name": share_name,
"path": share_path,
},
)
common.MainBody(ShareMountAction())