public RelationalScaffoldingModelFactory( [NotNull] IOperationReporter reporter, [NotNull] IRelationalTypeMapper typeMapper, [NotNull] IDatabaseModelFactory databaseModelFactory, [NotNull] ICandidateNamingService candidateNamingService, [NotNull] IPluralizer pluralizer, [NotNull] ICSharpUtilities cSharpUtilities, [NotNull] IScaffoldingTypeMapper scaffoldingTypeMapper) { Check.NotNull(reporter, nameof(reporter)); Check.NotNull(typeMapper, nameof(typeMapper)); Check.NotNull(databaseModelFactory, nameof(databaseModelFactory)); Check.NotNull(candidateNamingService, nameof(candidateNamingService)); Check.NotNull(pluralizer, nameof(pluralizer)); Check.NotNull(cSharpUtilities, nameof(cSharpUtilities)); Check.NotNull(scaffoldingTypeMapper, nameof(scaffoldingTypeMapper)); Reporter = reporter; TypeMapper = typeMapper; CandidateNamingService = candidateNamingService; _databaseModelFactory = databaseModelFactory; _pluralizer = pluralizer; _cSharpUtilities = cSharpUtilities; _scaffoldingTypeMapper = scaffoldingTypeMapper; }
public static T BestMatch <T>(this IEnumerable <T> collection, Func <T, string> fieldFunc, string value, IPluralizer pluralizer) where T : class { return(collection.FirstOrDefault(x => fieldFunc(x).Homogenize() == value.Homogenize()) ?? collection.FirstOrDefault(x => NamesMatch(fieldFunc(x), value, pluralizer))); }
private Session(Uri baseUri, string metadataString) { this.Settings = new ODataClientSettings(); this.Settings.BaseUri = baseUri; this.MetadataCache = MetadataCache.GetOrAdd(baseUri.AbsoluteUri, uri => new MetadataCache(uri, metadataString)); this.Pluralizer = new SimplePluralizer(); }
/// <summary> /// A method to pluralize a word. /// </summary> /// <param name="noun">A word to pluralize.</param> /// <param name="customPluralizationDictionary">Optional. A custom pluralization dictionary.</param> /// <param name="culture">Optional. The culture. If none is applied the running culture is used.</param> /// <returns>The word pluralized.</returns> public static string Pluralize(this string noun, IDictionary <string, string> customPluralizationDictionary = null, CultureInfo culture = null) { string plural = null; culture = culture ?? CultureInfo.CurrentCulture; // We need to check the specific and less specific dictionaries for a custom plural before applying standard pluralization. IPluralizer[] pluralizers = new IPluralizer[2]; plural = noun.PluralizeByCustomDictionaries(customPluralizationDictionary, culture, pluralizers); if (!string.IsNullOrWhiteSpace(plural)) { return(plural); } // Apply custom pluralization foreach (var pluralizer in pluralizers) { if (pluralizer != null) { return(pluralizer.Pluralize(noun, customPluralizationDictionary)); } } // No pluralizer for either the 5- or 2-letter Iso tags. throw new LanguagePluralizerMissingException(culture.IetfLanguageTag); }
public FormattedWeightUnitParser(IPluralizer pluralizer) : this( unitsByNames : GetParsableUnitsByNames(), unitsByAbbreviations : GetParsableUnitsByAbbreviations(), unitsByPluralizedNames : GetParsableUnitsByPluralizedNames(pluralizer)) { }
public ContentTypeGroupProviderController(IContentTypeGroupProvider contentTypeGroupProvider, IHumanizer humanizer, IPluralizer pluralizer, IContentTypeGroupMatcher contentTypeGroupMatcher) { ContentTypeGroupProvider = contentTypeGroupProvider; Humanizer = humanizer; Pluralizer = pluralizer; ContentTypeGroupMatcher = contentTypeGroupMatcher; }
public EmvelopeMediaTypeFormatter(IPluralizer pluralizer) { jsonMediaTypeFormatter = new JsonMediaTypeFormatter(); envelopeJsonMediaTypeFormatter = new EnvelopeJsonMediaTypeFormatter(pluralizer); // we should probably take these from the registered inner media type formatters SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json")); }
public EmvelopeMediaTypeFormatter(IPluralizer pluralizer) { jsonMediaTypeFormatter = new JsonMediaTypeFormatter(); envelopeJsonMediaTypeFormatter = new EnvelopeJsonMediaTypeFormatter(pluralizer); // we should probably take these from the registered inner media type formatters SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json")); }
public NEmberJSMediaTypeFormatter(IPluralizer pluralizer) { _jsonMediaTypeFormatter = new JsonMediaTypeFormatter(); _nEmberJsJsonMediaTypeFormatter = new NEmberJSJsonMediaTypeFormatter(pluralizer); // we should probably take these from the registered inner media type formatters SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json")); }
/// <summary> /// This API supports the Entity Framework Core infrastructure and is not intended to be used /// directly from your code. This API may change or be removed in future releases. /// </summary> public SqlServerScaffoldingModelFactory( [NotNull] ILoggerFactory loggerFactory, [NotNull] IRelationalTypeMapper typeMapper, [NotNull] IDatabaseModelFactory databaseModelFactory, [NotNull] CandidateNamingService candidateNamingService, [NotNull] IPluralizer pluralizer) : base(loggerFactory, typeMapper, databaseModelFactory, candidateNamingService, pluralizer) { }
/// <summary> /// This API supports the Entity Framework Core infrastructure and is not intended to be used /// directly from your code. This API may change or be removed in future releases. /// </summary> public SqliteScaffoldingModelFactory( [NotNull] IInterceptingLogger <LoggerCategory.Scaffolding> logger, [NotNull] IRelationalTypeMapper typeMapper, [NotNull] IDatabaseModelFactory databaseModelFactory, [NotNull] CandidateNamingService candidateNamingService, [NotNull] IPluralizer pluralizer) : base(logger, typeMapper, databaseModelFactory, candidateNamingService, pluralizer) { }
public FakeScaffoldingModelFactory( IOperationReporter reporter, ICandidateNamingService candidateNamingService, IPluralizer pluralizer, ICSharpUtilities cSharpUtilities, IScaffoldingTypeMapper scaffoldingTypeMapper) : base(reporter, candidateNamingService, pluralizer, cSharpUtilities, scaffoldingTypeMapper) { }
private Session(ODataClientSettings settings) { _adapterFactory = new AdapterFactory(this); _createAdapter = () => _adapterFactory.ParseMetadata(this.MetadataCache.MetadataAsString); this.Settings = settings; this.MetadataCache = MetadataCache.Instances.GetOrAdd(this.Settings.UrlBase, new MetadataCache()); this.Pluralizer = new SimplePluralizer(); }
private Session(ODataClientSettings settings) { if (settings.BaseUri == null || string.IsNullOrEmpty(settings.BaseUri.AbsoluteUri)) { throw new InvalidOperationException("Unable to create client session with no URI specified"); } this.Settings = settings; this.Pluralizer = new SimplePluralizer(); }
public FieldApiController(ILogger <FieldApiController> logger, IFormProvider formProvider, IFieldProvider fieldProvider, IControlMatcher controlMatcher, IHumanizer humanizer, IPluralizer pluralizer, ISingularizer singularizer) { Logger = logger; FormProvider = formProvider; FieldProvider = fieldProvider; ControlMatcher = controlMatcher; Humanizer = humanizer; Pluralizer = pluralizer; Singularizer = singularizer; }
public FakeScaffoldingModelFactory( [NotNull] ILoggerFactory loggerFactory, [NotNull] IPluralizer pluralizer) : base(loggerFactory, new TestTypeMapper(new RelationalTypeMapperDependencies()), new FakeDatabaseModelFactory(), new CandidateNamingService(), pluralizer) { }
public FakeScaffoldingModelFactory( [NotNull] IInterceptingLogger <LoggerCategory.Scaffolding> logger, [NotNull] IPluralizer pluralizer) : base(logger, new TestTypeMapper(new RelationalTypeMapperDependencies()), new FakeDatabaseModelFactory(), new CandidateNamingService(), pluralizer) { }
public FakeScaffoldingModelFactory( IOperationReporter reporter, ICandidateNamingService candidateNamingService, IPluralizer pluralizer, ICSharpUtilities cSharpUtilities, IScaffoldingTypeMapper scaffoldingTypeMapper, LoggingDefinitions loggingDefinitions, IModelRuntimeInitializer modelRuntimeInitializer) : base(reporter, candidateNamingService, pluralizer, cSharpUtilities, scaffoldingTypeMapper, loggingDefinitions, modelRuntimeInitializer) { }
private Session(Uri baseUri, string metadataString) { _adapterFactory = new AdapterFactory(this); _createAdapter = () => _adapterFactory.ParseMetadata(metadataString); this.Settings = new ODataClientSettings(); this.Settings.BaseUri = baseUri; this.MetadataCache = MetadataCache.Instances.GetOrAdd(baseUri.AbsoluteUri, new MetadataCache()); this.MetadataCache.SetMetadataDocument(metadataString); this.Pluralizer = new SimplePluralizer(); }
private Session(string urlBase, string metadataString) { _adapterFactory = new AdapterFactory(this); _createAdapter = () => _adapterFactory.ParseMetadata(metadataString); this.Settings = new ODataClientSettings(); this.Settings.UrlBase = urlBase; this.MetadataCache = MetadataCache.Instances.GetOrAdd(urlBase, new MetadataCache()); this.MetadataCache.SetMetadataString(metadataString); this.Pluralizer = new SimplePluralizer(); }
public FakeScaffoldingModelFactory( IOperationReporter reporter, IPluralizer pluralizer) : base( reporter, new CandidateNamingService(), pluralizer, new CSharpUtilities(), new ScaffoldingTypeMapper(TestServiceFactory.Instance.Create <SqlServerTypeMapper>())) { }
public FakeScaffoldingModelFactory( [NotNull] IOperationReporter reporter, [NotNull] IPluralizer pluralizer) : base( reporter, new CandidateNamingService(), pluralizer, new CSharpUtilities(), new ScaffoldingTypeMapper(new SqlServerTypeMapper(new RelationalTypeMapperDependencies()))) { }
public static bool NamesMatch(string actualName, string requestedName, IPluralizer pluralizer) { actualName = actualName.Split('.').Last().Homogenize(); requestedName = requestedName.Split('.').Last().Homogenize(); return(actualName == requestedName || pluralizer != null && (actualName == pluralizer.Singularize(requestedName) || actualName == pluralizer.Pluralize(requestedName) || pluralizer.Singularize(actualName) == requestedName || pluralizer.Pluralize(actualName) == requestedName)); }
public ContentTypeProviderController(IContentTypeProvider contentTypeProvider, IHumanizer humanizer, IPluralizer pluralizer, ISingletonProvider singletonProvider, IContentTypeActionModuleProvider contentTypeActionModuleProvider, INameExpressionParser nameExpressionParser, IListActionModuleProvider listActionModuleProvider, IContentTypeGroupMatcher contentTypeGroupMatcher) { ContentTypeProvider = contentTypeProvider; Humanizer = humanizer; Pluralizer = pluralizer; SingletonProvider = singletonProvider; ContentTypeActionModuleProvider = contentTypeActionModuleProvider; NameExpressionParser = nameExpressionParser; ListActionModuleProvider = listActionModuleProvider; ContentTypeGroupMatcher = contentTypeGroupMatcher; }
private Session(Uri baseUri, string metadataString) { _adapterFactory = new AdapterFactory(this); _createAdapter = () => _adapterFactory.ParseMetadata(metadataString); this.Settings = new ODataClientSettings(); this.Settings.BaseUri = baseUri; this.MetadataCache = MetadataCache.Instances.GetOrAdd(baseUri.AbsoluteUri, new MetadataCache()); this.MetadataCache.SetMetadataDocument(metadataString); this.Pluralizer = new SimplePluralizer(); }
private Session(ODataClientSettings settings) { if (settings.BaseUri == null || string.IsNullOrEmpty(settings.BaseUri.AbsoluteUri)) throw new InvalidOperationException("Unable to create client session with no URI specified"); _adapterFactory = new AdapterFactory(this); _createAdapter = () => _adapterFactory.ParseMetadata(this.MetadataCache.MetadataDocument); this.Settings = settings; this.MetadataCache = MetadataCache.Instances.GetOrAdd(this.Settings.BaseUri.AbsoluteUri, new MetadataCache()); this.Pluralizer = new SimplePluralizer(); }
private Session(Uri baseUri, ICredentials credentials, ODataPayloadFormat payloadFormat) { _adapterFactory = new AdapterFactory(this); _createAdapter = () => _adapterFactory.ParseMetadata(this.MetadataCache.MetadataDocument); this.Settings = new ODataClientSettings(); this.Settings.BaseUri = baseUri; this.Settings.Credentials = credentials; this.Settings.PayloadFormat = payloadFormat; this.MetadataCache = MetadataCache.Instances.GetOrAdd(baseUri.AbsoluteUri, new MetadataCache()); this.Pluralizer = new SimplePluralizer(); }
private Session(Uri baseUri, ICredentials credentials, ODataPayloadFormat payloadFormat) { _adapterFactory = new AdapterFactory(this); _createAdapter = () => _adapterFactory.ParseMetadata(this.MetadataCache.MetadataDocument); this.Settings = new ODataClientSettings(); this.Settings.BaseUri = baseUri; this.Settings.Credentials = credentials; this.Settings.PayloadFormat = payloadFormat; this.MetadataCache = MetadataCache.Instances.GetOrAdd(baseUri.AbsoluteUri, new MetadataCache()); this.Pluralizer = new SimplePluralizer(); }
private Session(string urlBase, ICredentials credentials, ODataPayloadFormat payloadFormat) { _adapterFactory = new AdapterFactory(this); _createAdapter = () => _adapterFactory.ParseMetadata(this.MetadataCache.MetadataAsString); this.Settings = new ODataClientSettings(); this.Settings.UrlBase = urlBase; this.Settings.Credentials = credentials; this.Settings.PayloadFormat = payloadFormat; this.MetadataCache = MetadataCache.Instances.GetOrAdd(urlBase, new MetadataCache()); this.Pluralizer = new SimplePluralizer(); }
public NEmberJSJsonMediaTypeFormatter(IPluralizer pluralizer) { _nEmberJsConverter = new NEmberJSJsonConverter(pluralizer); SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); SerializerSettings.DateFormatHandling = DateFormatHandling.IsoDateFormat; SerializerSettings.NullValueHandling = NullValueHandling.Ignore; //SerializerSettings.Converters.Add(new StringEnumConverter { CamelCaseText = true }); SerializerSettings.Converters.Add(new WhiteSpaceTrimStringConverter()); SerializerSettings.Converters.Add(_nEmberJsConverter); }
/// <summary> /// This API supports the Entity Framework Core infrastructure and is not intended to be used /// directly from your code. This API may change or be removed in future releases. /// </summary> public RelationalScaffoldingModelFactory( IOperationReporter reporter, ICandidateNamingService candidateNamingService, IPluralizer pluralizer, ICSharpUtilities cSharpUtilities, IScaffoldingTypeMapper scaffoldingTypeMapper) { _reporter = reporter ?? throw new ArgumentNullException(nameof(reporter)); _candidateNamingService = candidateNamingService ?? throw new ArgumentNullException(nameof(candidateNamingService)); _pluralizer = pluralizer ?? throw new ArgumentNullException(nameof(pluralizer)); _cSharpUtilities = cSharpUtilities ?? throw new ArgumentNullException(nameof(cSharpUtilities)); _scaffoldingTypeMapper = scaffoldingTypeMapper ?? throw new ArgumentNullException(nameof(scaffoldingTypeMapper)); }
public EnvelopeJsonMediaTypeFormatter(IPluralizer pluralizer) { envelopeConverter = new EnvelopeJsonConverter(pluralizer); SerializerSettings.ContractResolver = new SnakeCasePropertyNamesContractResolver(); SerializerSettings.DateFormatHandling = DateFormatHandling.IsoDateFormat; SerializerSettings.NullValueHandling = NullValueHandling.Ignore; SerializerSettings.Converters.Add(new StringEnumConverter { CamelCaseText = true }); SerializerSettings.Converters.Add(new WhiteSpaceTrimStringConverter()); SerializerSettings.Converters.Add(envelopeConverter); }
private Session(ODataClientSettings settings) { if (settings.BaseUri == null || string.IsNullOrEmpty(settings.BaseUri.AbsoluteUri)) { throw new InvalidOperationException("Unable to create client session with no URI specified"); } _adapterFactory = new AdapterFactory(this); _createAdapter = () => _adapterFactory.ParseMetadata(this.MetadataCache.MetadataDocument); this.Settings = settings; this.MetadataCache = MetadataCache.Instances.GetOrAdd(this.Settings.BaseUri.AbsoluteUri, new MetadataCache()); this.Pluralizer = new SimplePluralizer(); }
public ContentAppController(IContentTypeProvider contentTypeRepository, IContainerSpecificContentGetter containerSpecificContentGetter, IContainerSpecificContentCreator containerSpecificContentCreator, IContainerSpecificContentUpdater containerSpecificContentUpdater, IUrlProvider urlProvider, ISingletonProvider singletonProvider, IPluralizer pluralizer, IHumanizer humanizer, IDocumentFinder documentFinder, IContentDeserializer contentDeserializer, INameExpressionParser nameExpressionParser) { ContentTypeProvider = contentTypeRepository; ContainerSpecificContentGetter = containerSpecificContentGetter; ContainerSpecificContentCreator = containerSpecificContentCreator; ContainerSpecificContentUpdater = containerSpecificContentUpdater; UrlProvider = urlProvider; SingletonProvider = singletonProvider; Pluralizer = pluralizer; Humanizer = humanizer; DocumentFinder = documentFinder; ContentDeserializer = contentDeserializer; NameExpressionParser = nameExpressionParser; }
public FakeScaffoldingModelFactory( IOperationReporter reporter, IPluralizer pluralizer) : base( reporter, new CandidateNamingService(), pluralizer, new CSharpUtilities(), new ScaffoldingTypeMapper( new FallbackRelationalCoreTypeMapper( TestServiceFactory.Instance.Create <CoreTypeMapperDependencies>(), TestServiceFactory.Instance.Create <RelationalTypeMapperDependencies>(), TestServiceFactory.Instance.Create <SqlServerTypeMapper>()))) { }
internal static void SetPluralizer(IPluralizer pluralizer) { _pluralizer = pluralizer ?? new SimplePluralizer(); }
public EnvelopeJsonConverter(IPluralizer pluralizer) { this.pluralizer = pluralizer; }
public Conventions(IPluralizer pluralizer) { this.Pluralizer = pluralizer; }
public static void SetPluralizer(IPluralizer pluralizer) { _pluralizer = pluralizer; Extensions.StringExtensions.SetPluralizer(pluralizer); }
public static string ToPlural(this string word, IPluralizer pluralizer) { return pluralizer.ToPlural(word); }
public static string ToSingular(this string word, IPluralizer pluralizer) { return pluralizer.ToSingular(word); }