Ejemplo n.º 1
0
        protected dynamic CreateSerializedObjectViewModel(SerializedObject serializedObject)
        {
            ViewModelBuilder viewModelBuilder = new ViewModelBuilder();

            viewModelBuilder.BuildId(serializedObject.ObjectId);
            viewModelBuilder.BuildClassId(serializedObject.ClassId);

            foreach (SerializedProperty serializedProperty in JsonConvert.DeserializeObject <IEnumerable <SerializedProperty> >(serializedObject.SerializedProperties))
            {
                if (serializedProperty.Member.PropertyDataTypeStorageDataType == StorageDataType.Integer)
                {
                    viewModelBuilder.BuildProperty(serializedProperty.Member.Code, serializedProperty.IntegerValue);
                }

                else if (serializedProperty.Member.PropertyDataTypeStorageDataType == StorageDataType.Decimal)
                {
                    viewModelBuilder.BuildProperty(serializedProperty.Member.Code, serializedProperty.DecimalValue);
                }

                else if (serializedProperty.Member.PropertyDataTypeStorageDataType == StorageDataType.String)
                {
                    viewModelBuilder.BuildProperty(serializedProperty.Member.Code, serializedProperty.StringValue);
                }

                else if (serializedProperty.Member.PropertyDataTypeStorageDataType == StorageDataType.DateTime)
                {
                    viewModelBuilder.BuildProperty(serializedProperty.Member.Code, serializedProperty.DateTimeValue);
                }
            }

            return(viewModelBuilder.Build());
        }
Ejemplo n.º 2
0
        private dynamic CreateViewModel(IRequestHandler requestHandler, Microcontroller microcontroller, SerializedObject page)
        {
            ViewModelBuilder viewModelBuilder = new ViewModelBuilder();

            viewModelBuilder.BuildProperty("Page", this.CreateObjectViewModel(requestHandler, page));

            foreach (DataSource dataSource in requestHandler.Storage.GetRepository <IDataSourceRepository>().FilteredByMicrocontrollerId(microcontroller.Id))
            {
                viewModelBuilder.BuildProperty(dataSource.Code, this.CreateDataSourceViewModel(requestHandler, page, dataSource));
            }

            return(viewModelBuilder.Build());
        }
Ejemplo n.º 3
0
        private dynamic CreateViewModel(IRequestHandler requestHandler, Endpoint endpoint)
        {
            ViewModelBuilder viewModelBuilder = new ViewModelBuilder();

            foreach (DataSource dataSource in requestHandler.Storage.GetRepository <IDataSourceRepository>().FilteredByEndpointId(endpoint.Id))
            {
                viewModelBuilder.BuildProperty(dataSource.Code, this.CreateDataSourceViewModel(requestHandler, dataSource));
            }

            return(viewModelBuilder.Build());
        }
Ejemplo n.º 4
0
        private dynamic CreateObjectViewModel(IRequestHandler requestHandler, Object @object)
        {
            ViewModelBuilder viewModelBuilder = new ViewModelBuilder();

            foreach (var property in requestHandler.Storage.GetRepository <IPropertyRepository>().FilteredByObjectId(@object.Id))
            {
                Member   member   = requestHandler.Storage.GetRepository <IMemberRepository>().WithKey(property.MemberId);
                DataType dataType = requestHandler.Storage.GetRepository <IDataTypeRepository>().WithKey((int)member.PropertyDataTypeId);

                if (dataType.StorageDataType == StorageDataType.Integer)
                {
                    viewModelBuilder.BuildProperty(member.Code, property.IntegerValue);
                }

                else if (dataType.StorageDataType == StorageDataType.Decimal)
                {
                    viewModelBuilder.BuildProperty(member.Code, property.DecimalValue);
                }

                else if (dataType.StorageDataType == StorageDataType.String)
                {
                    Culture neutralCulture = CultureManager.GetNeutralCulture(requestHandler.Storage);
                    string  stringValue    = member.IsPropertyLocalizable == true?
                                             requestHandler.GetLocalizationValue((int)property.StringValueId) : requestHandler.GetLocalizationValue((int)property.StringValueId, neutralCulture.Id);

                    viewModelBuilder.BuildProperty(member.Code, stringValue);
                }

                else if (dataType.StorageDataType == StorageDataType.DateTime)
                {
                    viewModelBuilder.BuildProperty(member.Code, property.DateTimeValue);
                }
            }

            return(viewModelBuilder.Build());
        }