Esempio n. 1
0
        public Empty(ViewModel.Manager.Session Session)
            : base(Session)
        {
            List <ViewModel.Control> viewmodelcontrols = new List <ViewModel.Control>();

            this.QueueControls(Session, viewmodelcontrols);
        }
Esempio n. 2
0
        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;
        }
Esempio n. 3
0
        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();
        }
Esempio n. 4
0
        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);
            }
        }
Esempio n. 6
0
 public Controls(ViewModel.Manager.Session Session, IEnumerable <ViewModel.Control> Controls)
     : base(Session)
 {
     this.Values = this.QueueControls(Session, Controls);
 }
Esempio n. 7
0
        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]);
            }
        }
Esempio n. 8
0
 public Response(ViewModel.Manager.Session Session)
 {
     this.ControlQueue = new List <Control>();
     this.CommandQueue = new List <Command>();
 }