public async Task <object> Post()
        {
            if (DirectoryBrowsingHelper.IsFeatureEnabled())
            {
                throw new AlreadyExistsException(DISPLAY_NAME);
            }

            await DirectoryBrowsingHelper.SetFeatureEnabled(true);

            dynamic settings = DirectoryBrowsingHelper.ToJsonModel(null, null);

            return(Created(DirectoryBrowsingHelper.GetLocation(settings.id), settings));
        }
        public async Task Delete(string id)
        {
            DirectoryBrowsingId dirbId = new DirectoryBrowsingId(id);

            Context.Response.StatusCode = (int)HttpStatusCode.NoContent;

            Site site = (dirbId.SiteId != null) ? SiteHelper.GetSite(dirbId.SiteId.Value) : null;

            if (site != null)
            {
                var section = DirectoryBrowsingHelper.GetDirectoryBrowseSection(site, dirbId.Path, ManagementUnit.ResolveConfigScope());
                section.RevertToParent();
                ManagementUnit.Current.Commit();
            }

            if (dirbId.SiteId == null && DirectoryBrowsingHelper.IsFeatureEnabled())
            {
                await DirectoryBrowsingHelper.SetFeatureEnabled(false);
            }
        }