public TemplateConfiguration(Type template_type, IJsonCollectionConfiguration configuration, IDataBuilder data_builder, TDataSource data_source)
 {
     TemplateType       = template_type;
     Configuration      = configuration;
     DataBuilder        = data_builder;
     DataSource         = data_source;
     CustomsDataBuilder = new List <Func <TDataSource, Data> >();
 }
        public ItemConfiguration(IEnumerable <TDataSource> dataSources, Type templateType, IJsonCollectionConfiguration json_collection_configuration, IDataBuilder dataBuilder)
        {
            TemplateType = templateType;
            DataSources  = dataSources;
            JsonCollectionConfiguration = json_collection_configuration;
            DataBuilder        = dataBuilder;
            LinksBuilder       = new List <Func <TDataSource, Link> >();
            CustomsDataBuilder = new List <Func <TDataSource, Data> >();

            var link_name = TemplateType.Name.pluralize();

            var attribute = TemplateType.GetCustomAttributes(false).FirstOrDefault(x => x.GetType(  ) == typeof(TemplateFilterAttribute)) as TemplateFilterAttribute;

            if (attribute != null)
            {
                link_name = attribute.Name;
            }

            SelfLinkBuilder = ds => new Link {
                href   = Collection.href,
                name   = link_name,
                prompt = link_name.wordify()
            };
        }
 public TemplateDataSourceConfiguration(Type template_type, IJsonCollectionConfiguration configuration, IDataBuilder data_builder)
 {
     TemplateType  = template_type;
     Configuration = configuration;
     DataBuilder   = data_builder;
 }
 public static IJsonCollectionConfiguration add_link_if_name_is_not_null(this IJsonCollectionConfiguration configuration, Link link)
 {
     return(link.name.is_not_null_nor_empty() ? configuration.AddLink(link) : configuration);
 }
Example #5
0
 public QueryConfiguration(IJsonCollectionConfiguration configuration, IDataBuilder data_builder, object filter)
 {
     Configuration = configuration;
     DataBuilder   = data_builder;
     this.Filter   = filter;
 }
Example #6
0
 public JsonCollectionBuilder(IJsonCollectionConfiguration json_collection_configuration)
 {
     this.json_collection_configuration = json_collection_configuration;
 }
Example #7
0
 public ItemDataSourceConfiguration(Type template_type, IJsonCollectionConfiguration json_collection_configuration, IDataBuilder data_builder)
 {
     TemplateType = template_type;
     JsonCollectionConfiguration = json_collection_configuration;
     DataBuilder = data_builder;
 }