/** * Elide settings to be used for bootstrapping the Elide service. By default, this method constructs an * ElideSettings object using the application overrides provided in this class. If this method is overridden, * the returned settings object is used over any additional Elide setting overrides. * * That is to say, if you intend to override this method, expect to fully configure the ElideSettings object to * your needs. * * @param injector Service locator for web service for dependency injection. * @return Configured ElideSettings object. */ default ElideSettings getElideSettings(ServiceLocator injector) { DataStore dataStore = new InjectionAwareHibernateStore( injector, Util.getSessionFactory(getHibernate5ConfigPath(), getModelPackageName())); EntityDictionary dictionary = new EntityDictionary(getCheckMappings()); ElideSettingsBuilder builder = new ElideSettingsBuilder(dataStore) .withUseFilterExpressions(true) .withEntityDictionary(dictionary) .withJoinFilterDialect(new RSQLFilterDialect(dictionary)) .withSubqueryFilterDialect(new RSQLFilterDialect(dictionary)); if (enableIS06081Dates()) { builder = builder.withISO8601Dates("yyyy-MM-dd'T'HH:mm'Z'", TimeZone.getTimeZone("UTC")); } return builder.build(); }
@Override public Elide provide() { EntityDictionary dictionary = new EntityDictionary(new HashMap<>()); DefaultFilterDialect defaultFilterStrategy = new DefaultFilterDialect(dictionary); RSQLFilterDialect rsqlFilterStrategy = new RSQLFilterDialect(dictionary); MultipleFilterDialect multipleFilterStrategy = new MultipleFilterDialect( Arrays.asList(rsqlFilterStrategy, defaultFilterStrategy), Arrays.asList(rsqlFilterStrategy, defaultFilterStrategy) ); return new Elide(new ElideSettingsBuilder(AbstractIntegrationTestInitializer.getDatabaseManager()) .withAuditLogger(auditLogger) .withJoinFilterDialect(multipleFilterStrategy) .withSubqueryFilterDialect(multipleFilterStrategy) .withEntityDictionary(dictionary) .withUpdate200Status() .build()); }
@Override public Elide provide() { EntityDictionary dictionary = new EntityDictionary(TestCheckMappings.MAPPINGS); DefaultFilterDialect defaultFilterStrategy = new DefaultFilterDialect(dictionary); RSQLFilterDialect rsqlFilterStrategy = new RSQLFilterDialect(dictionary); MultipleFilterDialect multipleFilterStrategy = new MultipleFilterDialect( Arrays.asList(rsqlFilterStrategy, defaultFilterStrategy), Arrays.asList(rsqlFilterStrategy, defaultFilterStrategy) ); return new Elide(new ElideSettingsBuilder(AbstractIntegrationTestInitializer.getDatabaseManager()) .withAuditLogger(auditLogger) .withJoinFilterDialect(multipleFilterStrategy) .withSubqueryFilterDialect(multipleFilterStrategy) .withEntityDictionary(dictionary) .build()); }
@Override public Elide provide() { EntityDictionary dictionary = new EntityDictionary(TestCheckMappings.MAPPINGS); DefaultFilterDialect defaultFilterStrategy = new DefaultFilterDialect(dictionary); RSQLFilterDialect rsqlFilterStrategy = new RSQLFilterDialect(dictionary); MultipleFilterDialect multipleFilterStrategy = new MultipleFilterDialect( Arrays.asList(rsqlFilterStrategy, defaultFilterStrategy), Arrays.asList(rsqlFilterStrategy, defaultFilterStrategy) ); return new Elide(new ElideSettingsBuilder(AbstractIntegrationTestInitializer.getDatabaseManager()) .withAuditLogger(auditLogger) .withJoinFilterDialect(multipleFilterStrategy) .withSubqueryFilterDialect(multipleFilterStrategy) .withEntityDictionary(dictionary) .withReturnErrorObjects(true) .build()); }