public Empty(ViewModel.Manager.Session Session) : base(Session) { List <ViewModel.Control> viewmodelcontrols = new List <ViewModel.Control>(); this.QueueControls(Session, viewmodelcontrols); }
static void Main(string[] args) { // Create Logging Logging.Console log = new Logging.Console(); // Connect to Server ViewModel.Manager.Server server = new ViewModel.Manager.Server("http://localhost/11SP9", log); // Load Assemblies server.LoadAssembly("Aras.Model.Design"); server.LoadAssembly("Aras.ViewModel.Design"); // Login ViewModel.Manager.Database database = server.Database("Development"); ViewModel.Manager.Session session = database.Login("admin", IO.Server.PasswordHash("innovator")); Model.Design.Queries.Searches.Part partquery = new Model.Design.Queries.Searches.Part(session.Model); Model.Design.Items.Part part = (Model.Design.Items.Part)partquery.Store.First(); Model.Design.Queries.Trees.Part treequery = new Model.Design.Queries.Trees.Part(session.Model); treequery.Root = part; Model.Design.Items.Part treeroot = (Model.Design.Items.Part)treequery.Store.First(); ViewModel.Trees.Relationship reltree = new Trees.Relationship(session, typeof(Aras.ViewModel.Design.NodeFormatters.Part)); reltree.Binding = treeroot; TreeNode rootnode = reltree.Root; rootnode.Load.Execute(); String test = rootnode.Label; }
public Control(ViewModel.Manager.Session Session, ViewModel.Control Control) : base(Session) { List <ViewModel.Control> viewmodelcontrols = new List <ViewModel.Control>(); viewmodelcontrols.Add(Control); List <Models.Control> controls = this.QueueControls(Session, viewmodelcontrols); this.Value = controls.First(); }
protected List <Control> QueueControls(ViewModel.Manager.Session Session, IEnumerable <ViewModel.Control> ViewModelControls) { this.QueuedControls = new Dictionary <String, Control>(); this.QueuedViewModelControls = new Dictionary <Guid, ViewModel.Control>(); List <Control> controls = new List <Control>(); // Process Command Queue foreach (ViewModel.Command viewmodelcommand in Session.GetCommandsFromQueue()) { Command command = new Command(viewmodelcommand); this.CommandQueue.Add(command); } // Merge Controls to be Queued foreach (ViewModel.Control viewmodelcontrol in Session.GetControlsFromQueue()) { if (!this.QueuedViewModelControls.ContainsKey(viewmodelcontrol.ID)) { this.QueuedViewModelControls[viewmodelcontrol.ID] = viewmodelcontrol; } } foreach (ViewModel.Control viewmodelcontrol in ViewModelControls) { if (!this.QueuedViewModelControls.ContainsKey(viewmodelcontrol.ID)) { this.QueuedViewModelControls[viewmodelcontrol.ID] = viewmodelcontrol; } } // Process Controls foreach (ViewModel.Control viewmodelcontrol in this.QueuedViewModelControls.Values) { Control control = this.QueueControl(Session, viewmodelcontrol); if (ViewModelControls.Contains(viewmodelcontrol)) { controls.Add(control); } } return(controls); }
public Models.Response Login(String Name, Models.Credentials Credentials) { try { // Get Database ViewModel.Manager.Database database = this.Server.Database(Name); // Login ViewModel.Manager.Session session = database.Login(Credentials.Username, Credentials.Password); HttpCookie cookie = new HttpCookie(tokencookie, session.Token); HttpContext.Current.Response.Cookies.Add(cookie); return(new Models.Responses.Empty(session)); } catch (Exception e) { throw this.ProcessException(e); } }
public Controls(ViewModel.Manager.Session Session, IEnumerable <ViewModel.Control> Controls) : base(Session) { this.Values = this.QueueControls(Session, Controls); }
private Control QueueControl(ViewModel.Manager.Session Session, ViewModel.Control ViewModelControl) { // Get Model Control ID String id = ViewModel.Utilities.GuidToString(ViewModelControl.ID); // Check Queue for Control if (!this.QueuedControls.ContainsKey(id)) { // Get Control Type Manager.ControlType type = Session.Database.Server.ControlType(ViewModelControl); // Create Control Control control = new Control(id, type.ClientType); // Add Properties to Model Control foreach (String name in ViewModelControl.Properties) { // Get Type Attributes.PropertyTypes propertytype = ViewModelControl.GetPropertyType(name); // Create Property Property property = new Property(name, propertytype, ViewModelControl.GetPropertyReadOnly(name)); control.Properties.Add(property); // Add Value object viewmodelvalue = ViewModelControl.GetPropertyValue(name); switch (propertytype) { case ViewModel.Attributes.PropertyTypes.Boolean: if (viewmodelvalue != null) { if (((Boolean)viewmodelvalue) == true) { property.Values.Add("1"); } else { property.Values.Add("0"); } } else { property.Values.Add(null); } break; case ViewModel.Attributes.PropertyTypes.Control: if (viewmodelvalue != null) { if (this.QueuedViewModelControls.ContainsKey(((ViewModel.Control)viewmodelvalue).ID)) { // Control is in Queue to ensure added first Control propcontrol = this.QueueControl(Session, (ViewModel.Control)viewmodelvalue); property.Values.Add(propcontrol.ID); } else { // Not in Queue to just add ID property.Values.Add(ViewModel.Utilities.GuidToString(((ViewModel.Control)viewmodelvalue).ID)); } } else { property.Values.Add(null); } break; case ViewModel.Attributes.PropertyTypes.ControlList: if (viewmodelvalue != null) { IEnumerable <ViewModel.Control> controls = (IEnumerable <ViewModel.Control>)viewmodelvalue; foreach (ViewModel.Control viewmodelcontrol in controls) { if (this.QueuedViewModelControls.ContainsKey(viewmodelcontrol.ID)) { // Control is in Queue to ensure added first Control propcontrol = this.QueueControl(Session, viewmodelcontrol); property.Values.Add(propcontrol.ID); } else { // Not in Queue to just add ID property.Values.Add(ViewModel.Utilities.GuidToString(viewmodelcontrol.ID)); } } } break; case ViewModel.Attributes.PropertyTypes.Int32: property.Values.Add(((System.Int32)viewmodelvalue).ToString()); break; case ViewModel.Attributes.PropertyTypes.NullableInt32: if (viewmodelvalue == null) { property.Values.Add(null); } else { property.Values.Add(((System.Int32)viewmodelvalue).ToString()); } break; case ViewModel.Attributes.PropertyTypes.String: property.Values.Add((System.String)viewmodelvalue); break; case ViewModel.Attributes.PropertyTypes.Float: property.Values.Add(((System.Double)viewmodelvalue).ToString()); break; case ViewModel.Attributes.PropertyTypes.StringList: if (viewmodelvalue != null) { IEnumerable <String> strings = (IEnumerable <String>)viewmodelvalue; foreach (String value in (IEnumerable <String>)viewmodelvalue) { property.Values.Add(value); } } break; case ViewModel.Attributes.PropertyTypes.Date: if (viewmodelvalue != null) { property.Values.Add(((System.DateTime)viewmodelvalue).ToString("yyyy-MM-ddTHH:mm:ssZ")); } else { property.Values.Add(null); } break; case ViewModel.Attributes.PropertyTypes.Decimal: if (viewmodelvalue != null) { property.Values.Add(((System.Decimal)viewmodelvalue).ToString()); } else { property.Values.Add(null); } break; case ViewModel.Attributes.PropertyTypes.Command: if (viewmodelvalue != null) { property.Values.Add(ViewModel.Utilities.GuidToString(((ViewModel.Command)viewmodelvalue).ID)); } else { property.Values.Add(null); } break; default: throw new NotImplementedException("PropertyType not implemented: " + propertytype.ToString()); } } // Queue Control this.ControlQueue.Add(control); this.QueuedControls[control.ID] = control; return(control); } else { return(this.QueuedControls[id]); } }
public Response(ViewModel.Manager.Session Session) { this.ControlQueue = new List <Control>(); this.CommandQueue = new List <Command>(); }