Exemple #1
0
        public void AddDirectory(RsyncObjectModel model)
        {
            var dirs = _serviceModel.Directories;

            dirs.Add(model);
            _serviceModel.Directories = dirs;
            Save(_serviceModel);
        }
Exemple #2
0
        public static void AddDirectory(RsyncObjectModel model)
        {
            var dirs = ServiceModel.Directories;

            dirs.Add(model);
            ServiceModel.Directories = dirs;
            Save(ServiceModel);
            DirectoryWatcherRsync.Start(dirs);
        }
Exemple #3
0
        public AntdRsyncModule()
        {
            Get["/rsync"] = x => {
                var rsyncIsActive = RsyncConfiguration.IsActive();
                var model         = new PageRsyncModel {
                    RsyncIsActive    = rsyncIsActive,
                    RsyncDirectories = RsyncConfiguration.Get()?.Directories.OrderBy(_ => _.Type)
                };
                return(JsonConvert.SerializeObject(model));
            };

            Post["/rsync/set"] = x => {
                RsyncConfiguration.Set();
                return(HttpStatusCode.OK);
            };

            Post["/rsync/enable"] = x => {
                RsyncConfiguration.Enable();
                return(HttpStatusCode.OK);
            };

            Post["/rsync/disable"] = x => {
                RsyncConfiguration.Disable();
                return(HttpStatusCode.OK);
            };

            Post["/rsync/options"] = x => {
                RsyncConfiguration.Save(new RsyncConfigurationModel());
                return(HttpStatusCode.OK);
            };

            Post["/rsync/directory"] = x => {
                string source      = Request.Form.Source;
                string destination = Request.Form.Destination;
                string type        = Request.Form.Type;
                var    model       = new RsyncObjectModel {
                    Source      = source,
                    Destination = destination,
                    Type        = type
                };
                RsyncConfiguration.AddDirectory(model);
                return(HttpStatusCode.OK);
            };

            Post["/rsync/directory/del"] = x => {
                string guid = Request.Form.Guid;
                RsyncConfiguration.RemoveDirectory(guid);
                return(HttpStatusCode.OK);
            };
        }