Exemplo n.º 1
0
        public ApplicationSchemaDefinition(
            string applicationName, string title, string schemaId, SchemaStereotype stereotype,
            SchemaMode?mode, ClientPlatform?platform, bool @abstract,
            List <IApplicationDisplayable> displayables, IDictionary <string, string> schemaProperties,
            ApplicationSchemaDefinition parentSchema, ApplicationSchemaDefinition printSchema, ApplicationCommandSchema commandSchema, string idFieldName, string unionSchema)
        {
            if (displayables == null)
            {
                throw new ArgumentNullException("displayables");
            }

            ApplicationName = applicationName;
            Platform        = platform;
            _displayables   = displayables;
            ParentSchema    = parentSchema;
            PrintSchema     = printSchema;
            SchemaId        = schemaId;
            Stereotype      = stereotype;
            Abstract        = @abstract;
            Mode            = mode;
            CommandSchema   = commandSchema;
            Title           = title;
            _properties     = schemaProperties;
            IdFieldName     = idFieldName;
            UnionSchema     = unionSchema;
        }
Exemplo n.º 2
0
        public ApplicationSchemaDefinition(
            String applicationName, string title, string schemaId, SchemaStereotype stereotype,
            SchemaMode?mode, ClientPlatform?platform, bool @abstract,
            IList <IApplicationDisplayable> displayables,
            ApplicationSchemaDefinition parentSchema, ApplicationCommandSchema commandSchema)
        {
            if (displayables == null)
            {
                throw new ArgumentNullException("displayables");
            }

            ApplicationName = applicationName;
            Platform        = platform;
            Displayables    = displayables;
            ParentSchema    = parentSchema;
            SchemaId        = schemaId;
            Stereotype      = stereotype;
            Abstract        = @abstract;
            Mode            = mode;
            CommandSchema   = commandSchema;
            Title           = title;
        }
        public static ApplicationSchemaDefinition GetInstance(
            String applicationName, string title, string schemaId, SchemaStereotype stereotype,
            SchemaMode?mode, ClientPlatform?platform, bool @abstract,
            [NotNull] List <IApplicationDisplayable> displayables, [NotNull] IDictionary <string, string> schemaProperties,
            ApplicationSchemaDefinition parentSchema, ApplicationSchemaDefinition printSchema, [NotNull] ApplicationCommandSchema commandSchema,
            string idFieldName, string unionSchema)
        {
            var schema = new ApplicationSchemaDefinition(applicationName, title, schemaId, stereotype, mode, platform,
                                                         @abstract, displayables, schemaProperties, parentSchema, printSchema, commandSchema, idFieldName, unionSchema);

            if (schema.ParentSchema != null)
            {
                schema.Displayables = MergeParentSchemaDisplayables(schema, schema.ParentSchema);
                schema.Mode         = schema.Mode == null || schema.Mode == SchemaMode.None ? schema.ParentSchema.Mode : schema.Mode;
                schema.Stereotype   = schema.Stereotype == SchemaStereotype.None ? schema.ParentSchema.Stereotype : schema.Stereotype;
                MergeWithParentProperties(schema);
                MergeWithParentCommands(schema);
            }
            schema.Title = title ?? BuildDefaultTitle(schema);
            AddHiddenRequiredFields(schema);

            MergeWithStereotypeSchema(schema);


            schema.FkLazyFieldsResolver         = ApplicationSchemaLazyFkHandler.LazyFkResolverDelegate;
            schema.ComponentDisplayableResolver = ReferenceHandler.ComponentDisplayableResolver;

            return(schema);
        }