public bool Exists(RhspDataID dataID, Type type) { RhspDataAttribute hda = GetRuntimeHda(type); XElement parent = getParent(ConfigDocument, hda.Parent); return(find(parent, dataID, hda).Count() != 0); }
public XElement GetElement(RhspDataID dataID, Type dataType) { RhspDataAttribute hda = GetRuntimeHda(dataType); XElement element = getElementUsingHda(ConfigDocument, dataID, hda); return(element); }
private string getFullPath(RhspDataID websiteID, string relativePath) { return(SecurityTemplate.GetFullPath( ServerConfig.WebsiteDirectory, CreateManager <WebsiteManager>().Get(websiteID), relativePath)); }
public void FromElement(XElement element, HostingConfigManager manager) { WebsiteID = new RhspDataID(element.GetElementValue <string>("WebsiteID", false)); Name = element.GetElementValue <string>("Name", false); DefaultTtl = element.GetElementValue <string>("DefaultTtl", false); this.RecordArray = getRecordArray(element, manager); }
public void Delete(RhspDataID dataID) { DnsZone dnsZone = HostingConfig.GetSingle <DnsZone>(dataID); HostingConfig.Delete <DnsZone>(dataID); CreateManager <IscBindManager>().DeleteZone(dnsZone); }
public CustomerDeleteResult Delete(RhspDataID dataID) { CustomerDeleteResult r = new CustomerDeleteResult(); // Get the customer to delete physical objects. Customer customer = Get(dataID); // Delete websites belonging to customer. WebsiteManager wm = CreateManager <WebsiteManager>(); wm.GetByCustomer(dataID).ToList().ForEach( w => r.Errors.AddRange(wm.Delete(w.DataID).Errors)); // Make client directory obsolete after websites are made obsolete. MakeDirectoryObsoleteResult mdor = TryMakeDirectoryObsolete(getDirectory(customer)); if (mdor.Error != null) { r.Errors.Add(mdor.Error.Message); } // Delete ftp users, group, and security. deleteFtpObjects(customer); // Finally delete the actual customer configuration. Context.HostingConfig.Delete <Customer>(dataID); return(r); }
private void setSelectedPrimaryHost(RhspDataID websiteHostID) { if (websiteHostID != null) { List <WebsiteHost> list = primaryHostComboBox.Items.Cast <WebsiteHost>().ToList(); primaryHostComboBox.SelectedItem = list.Find(c => c.DataID == websiteHostID); } }
void CustomerViewer_New(object sender, EventArgs e) { Customer customer = new Customer(RhspDataID.Generate()); CustomerEditorForm editor = new CustomerEditorForm(); editor.SetCreateMode(customer); ShowEditorAsync(editor); }
private XElement getRecordElement(XElement zoneElement, RhspDataID dataID) { var q = from r in zoneElement.Elements("Records").Elements() where r.GetElementValue <string>("RecordID", false) == dataID.Value select r; return(q.First()); }
public void FromElement(XElement element, HostingConfigManager manager) { DataID = new RhspDataID(element.GetElementValue <string>("RecordID", false)); Name = element.GetElementValue <string>("Name", false); Ttl = element.GetElementValue <string>("Ttl", true); RecordType = getRecordType(element.GetElementValue <string>("RecordType", false)); Value = element.GetElementValue <string>("Value", false); }
private void deleteWithoutSave(RhspDataID dataID, Type dataType, XDocument document) { RhspDataAttribute hdca = GetRuntimeHda(dataType); XElement element = getElementUsingHda(document, dataID, hdca); // Simply remove the element. element.Remove(); }
public Website[] GetByCustomer(RhspDataID dataID) { var q = from w in GetAll() where w.CustomerID == dataID select w; return(q.ToArray()); }
public WebsiteDeleteResult Delete(RhspDataID dataID) { return(Run <WebsiteDeleteResult>("Delete", new { dataID })); //RhspConnection connection = CreateConnection(); //RhspCommand command = new RhspCommand(connection, "Website.Delete"); //command.Parameters.Add("dataID", dataID); //command.Execute(); }
private void setSelectedCustomer(RhspDataID customerID) { if (customerID != null) { List <Customer> list = customerComboBox.Items.Cast <Customer>().ToList(); customerComboBox.SelectedItem = list.Find(c => c.DataID.Equals(customerID)); } }
public Website Get(RhspDataID dataID) { return(Run <Website>("Get", new { dataID })); //RhspConnection connection = CreateConnection(); //RhspCommand command = new RhspCommand(connection, "Website.Get"); //command.Parameters.Add("dataID", dataID); //RhspCommandResponse response = command.Execute(); //return response.GetResult<Website>(); }
private DnsZone convertToDnsZone(MsDnsZone mdz) { DnsZone dnsZone = new DnsZone(RhspDataID.Generate()); dnsZone.DefaultTtl = defaultTtl; dnsZone.Name = mdz.Name; dnsZone.RecordArray = convertToDnsRecords(mdz.MixedReords).ToArray(); return(dnsZone); }
public SecurityTemplate Get(RhspDataID dataID) { try { return(getQuery().Where(r => r.DataID == dataID).Single()); } catch (Exception ex) { throw new Exception("Could not get security template with ID '" + dataID + "'.", ex); } }
public void FromElement(XElement element, HostingConfigManager manager) { WebsiteID = new RhspDataID(element.GetElementValue <string>("WebsiteID", false)); RelativePath = element.GetElementValue <string>("RelativePath", false); Username = element.GetElementValue <string>("Username", true); Read = element.GetElementValue <bool>("Read", false); Write = element.GetElementValue <bool>("Write", false); Delete = element.GetElementValue <bool>("Delete", false); Access = parseAccess(element.GetElementValue <string>("Access", false)); UseIisIdentity = element.GetElementValue <bool>("UseIisIdentity", true); }
public WebsiteWizardForm(WebsiteViewer viewer) { InitializeComponent(); this.Viewer = viewer; this.Website = new Website(RhspDataID.Generate()); AddPage(new WelcomePage()); AddPage(new CustomerPage()); AddPage(new SettingsPage()); AddPage(new FinishPage()); }
public TWebsite Get <TWebsite>(RhspDataID dataID) where TWebsite : Website { try { return(getQuery <TWebsite>().Where(w => w.DataID == dataID).Single()); } catch (Exception ex) { throw new Exception("Could not get website where ID is '" + dataID + "'.", ex); } }
private void recordAddButton_Click(object sender, EventArgs e) { DnsRecord record = new DnsRecord(RhspDataID.Generate()); record.PendingAction = ChildPendingAction.Create; recordResultList.Add(record); recordBindingList.Add(record); recordBindingList.ResetBindings(); selectGridViewRow(recordDataGridView.Rows.Cast <DataGridViewRow>().Last().Index); recordDataGridView.BeginEdit(false); }
private IEnumerable <DnsRecord> convertToDnsRecords(IEnumerable <MsDnsRecord> mdrList) { List <DnsRecord> recordList = new List <DnsRecord>(); foreach (MsDnsRecord mdr in mdrList.Where(mdr => (mdr.DnsType != MsDnsRecordType.Soa))) { DnsRecord record = new DnsRecord(RhspDataID.Generate()); record.Name = mdr.Name; record.Value = getRecordValue(mdr); record.RecordType = convertToRecordType(mdr.DnsType); record.Ttl = (mdr.TTL != 0) ? mdr.TTL.ToString() : null; recordList.Add(record); } return(recordList); }
private void addButton_Click(object sender, EventArgs e) { SecurityTemplate rule = new SecurityTemplate(RhspDataID.Generate()); rule.PendingAction = ChildPendingAction.Create; //rule.Username = usernameBindingList.FirstOrDefault(); ruleResultList.Add(rule); ruleBindingList.Add(rule); ruleBindingList.ResetBindings(); ChangeMade(); selectGridViewRow(dataGridView.Rows.Cast <DataGridViewRow>().Last().Index); dataGridView.BeginEdit(false); }
public void Delete(RhspDataID dataID) { SecurityTemplate securityTemplate = Get(dataID); if (!string.IsNullOrEmpty(securityTemplate.Username)) { // Only try to delete the physical rule if the user is specified. WindowsUser windowsUser = findWindowsUser(securityTemplate.Username); if (windowsUser != null) { // Only try to delete when the user is still on the system. deleteFromFileSystem(securityTemplate, windowsUser.Sid); } } HostingConfig.Delete <SecurityTemplate>(dataID); }
private void delete(RhspDataID dataID, Type dataType) { IRhspData data = (IRhspData)getSingleOfType(dataID, dataType); deleteWithoutSave(dataID, dataType, ConfigDocument); if (data is IRhspDataParent) { // Set each child to deleted, then process. IRhspDataParent dataParent = (IRhspDataParent)data; List <IRhspDataChild> childList = dataParent.GetDataChildren().ToList(); // Process all the marked deletions. childList.ForEach(c => c.PendingAction = ChildPendingAction.Delete); } }
private XElement getElementUsingHda( XDocument document, RhspDataID dataID, RhspDataAttribute hda) { XElement parent = getParent(document, hda.Parent); var uniqueQuery = find(parent, dataID, hda); // Ensure that ID actually exists. if (uniqueQuery.Count() == 0) { throw new InvalidOperationException( "Unable to find element with unique ID of '" + dataID.Value + "'."); } return(uniqueQuery.First()); }
private void addButton_Click(object sender, EventArgs e) { WebsiteHost host = new WebsiteHost(RhspDataID.Generate()); host.PendingAction = ChildPendingAction.Create; host.Port = WebsiteHost.DefaultHttpPort; host.IpAddress = IpAddressArray.FirstOrDefault(); hostList.Add(host); hostBindingList.Add(host); hostBindingList.ResetBindings(); ChangeMade(); selectGridViewRow(dataGridView.Rows.Cast <DataGridViewRow>().Last().Index); dataGridView.BeginEdit(false); }
private IEnumerable <XElement> find( XElement parent, RhspDataID dataID, RhspDataAttribute hda) { if (dataID == null) { throw new ArgumentNullException("dataID"); } return(from child in ( from element in parent.Elements() select element.Element(hda.ID) ) where child.Value == dataID.Value select child.Parent); // Select the owner of the ID. }
public int GetDataSchemaVersion(RhspDataID dataID, Type type) { int version = 0; if ((dataID != null) && HostingConfig.Exists(dataID, type)) { XElement e = HostingConfig.GetElement(dataID, type); version = e.GetElementValue <int>(SchemaVersionElement, true); } if (version != 0) { return(version); } else { // Return the default where none set. return(RhspData.FirstSchemaVersion); } }
private void addbutton_Click(object sender, EventArgs e) { DnsZone zone = new DnsZone(RhspDataID.Generate()); zone.PendingAction = ChildPendingAction.Create; DnsZoneEditor editor = new DnsZoneEditor(); editor.ReflectDataToForm(zone); DialogResult result = editor.ShowDialog(); if (result == DialogResult.OK) { editor.ReflectFormToData(zone); resultList.Add(zone); bindingList.Add(zone); bindingList.ResetBindings(); ChangeMade(); } }