Commit Graph

47 Commits

Author SHA1 Message Date
Alexander A. Klimov 5ce491d57a Icinga\Repository::retrieveGeneralizedTime(): outsource logic
refs #2816
2018-01-18 15:25:21 +01:00
Alexander A. Klimov fbffc42b96 Icinga\Repository::retrieveGeneralizedTime(): comply w/ RFC4517
refs #2816
2018-01-17 18:14:18 +01:00
Johannes Meyer 9ea916c5c6 Repository: Fix that legacy sort rules are ignored
refs #2765
2018-01-16 12:59:42 +01:00
Johannes Meyer 46647444c4 Repository: Fix broken conversion rules
The additional layers in $aliasTableMap and $aliasColumnMap required
for DbRepository's join probabilities are now only established there.
2017-06-20 08:32:44 +02:00
Johannes Meyer b8ae738f7f DbRepository: Add support for join probabilities
Finally solves the issue with those nasty column prefixes..
2017-06-06 09:29:05 +02:00
Johannes Meyer 7482a34b45 Repository: Check prefixed aliases earlier when inspecting $aliasTableMap
Avoids false-positives in case an exact match using $columnTableMap is
possible, though $aliasTableMap holds a prefixed entry.
2017-06-06 09:24:56 +02:00
Johannes Meyer 181e2ef05c Swag: Fix swag (aka a whole bunch of code style issues..) 2017-01-27 14:48:59 +01:00
Johannes Meyer df47026792 Repository: Fix documentation of method getDataSource
refs #13034
2016-11-04 09:56:53 +01:00
Alexander A. Klimov 38602379be Repository: allow not to provide a datasource for all tables
refs #13034
2016-11-03 16:12:09 +01:00
Alexander A. Klimov e5b24eb467 IniRepository: fix doc and method order
refs #13034
2016-11-03 16:00:20 +01:00
Alexander A. Klimov e655699917 Repository: add support for per-table datasources
refs #13034
2016-11-03 14:35:18 +01:00
Johannes Meyer 124fb848a0 Repository: Fix column caches² 2016-08-18 15:40:20 +02:00
Johannes Meyer bd4f21df11 Repository: Fix column caches 2016-08-18 15:30:47 +02:00
Johannes Meyer ccb8bcc6e3 Repository: Allow for some more fine-grained control
Filter columns, search columns and sort rules can now be returned
dependent on a query's current target
2016-08-18 13:36:09 +02:00
Johannes Meyer 28c024c037 Repository: Properly handle non-aliased columns 2016-04-21 10:10:24 +02:00
Alexander A. Klimov 474803fee4 Change all license headers to only reflect a file's year of creation
refs #11000
2016-02-08 15:41:00 +01:00
Eric Lippmann 7fd575080e PHP7: Rename String to StringHelper
refs #10251
2016-01-27 16:46:55 +01:00
Johannes Meyer d2b8ed243f Repository: Accept parameter $filter in method requireFiltercolumn()
This allows to adjust more than the name of the column if necessary.

refs #10364
2015-11-11 16:05:54 +01:00
Johannes Meyer ff61b8e696 Repository: Fix that conversion rules for statements are applied on queries..
..when calling RepositoryQuery::addFilter().
2015-11-05 14:07:54 +01:00
Johannes Meyer 5db8d08729 Repository: Fix that column normalisation is not applied by requireAllQueryColumns() 2015-10-30 15:36:48 +01:00
Johannes Meyer 5dfaa89440 Repository: Pass some more details to conversion methods 2015-10-30 15:35:41 +01:00
Johannes Meyer df7a2ee0a9 Repository: Add native support for virtual table names 2015-10-30 15:34:19 +01:00
Johannes Meyer 38622e96d5 Repository: Allow implementations to provide search columns
refs #9029
2015-08-13 14:20:21 +02:00
Johannes Meyer 4b6849eea7 Repository: Introduce query column blacklists
We can no longer use $filterColumns to blacklist query columns so
there is now another set of column names required to achieve this.

refs #9029
2015-08-13 14:06:27 +02:00
Johannes Meyer d0dd4b09a0 Repository: It's "sort rules" in general, not "default sort rules" 2015-07-28 11:42:13 +02:00
Johannes Meyer caca219aa1 DbRepository: Consider table aliases while handling statement columns
Usually not required as there are no aliases for statements possible
but since we cannot differentiate everywhere what type of column
we're processing it is safer to always handle such.

fixes #9553
2015-07-03 13:06:10 +02:00
Johannes Meyer 5d3eb5e8cb Repository: Allow to check for conversion rules of a specific column 2015-06-26 14:20:35 +02:00
Johannes Meyer 4ba84903f1 Repository: Accept already resolved columns as well
If a column was aliased, one was required to use the alias when
selecting, sorting or filtering. This is now not necessary anymore
as it's now possible to use the actual column name as well.
2015-06-26 13:07:21 +02:00
Johannes Meyer e0c0e9c874 LdapUserBackend: Move function retrieveGeneralizedTime into its parent
refs #7343
2015-06-03 14:36:46 +02:00
Johannes Meyer beb5bd7370 Repository: Clone a filter implicitly in self::requireFilter($clone = true)
refs #8826
2015-06-01 15:03:08 +02:00
Johannes Meyer cc779024fe Repository: providesValueConversion() should not be required being called
refs #8826
2015-05-29 11:57:38 +02:00
Johannes Meyer 3959dc27d7 Repository: Do not return filter columns when requiring all query columns
I really wonder why I did not notice this until now...

refs #8826
2015-05-29 11:36:08 +02:00
Johannes Meyer bb285db05b Differentiate the source or destination of a column when converting values
refs #8826
2015-05-29 11:32:15 +02:00
Johannes Meyer 5326ce6bca DbRepository: Add support for table specific aliases
This was previously only possible for the base table and in case one wanted
to use table aliases in the query column definition for non-base tables as
well, it did not work well due to not being explicitly supported. Now, to use
such table aliases one must initialize DbRepository::tableAliases.

refs #8826
2015-05-28 13:44:51 +02:00
Johannes Meyer 647dd9d425 RepositoryQuery: Pass through the query when requiring a table or column
This allows now to adjust the query in custom repository implementations.

refs #8826
2015-05-28 13:25:26 +02:00
Johannes Meyer 4833ff109c RepositoryQuery: Validate the table passed when calling from()
refs #8826
2015-05-21 15:01:13 +02:00
Johannes Meyer d39c697d0e Repository: QueryInterface is _not_ queryable anymore...
refs #8826
2015-05-18 14:01:17 +02:00
Johannes Meyer e9fee2dad6 Repository: Handle column name ambiguousness automatically
refs #8826
2015-05-13 13:27:08 +02:00
Johannes Meyer 053c9cdcb3 Repository: Check whether a column is queried from the correct table
refs #8826
2015-05-12 15:38:29 +02:00
Johannes Meyer f1c82fc318 IniUserGroupBackend: Convert timestamps and arrays...
...to formatted datetime strings and comma separated strings respectively

refs #8826
2015-05-08 15:28:10 +02:00
Johannes Meyer 6ef4bbe210 Introduce class IniRepository
refs #8826
2015-05-08 15:22:51 +02:00
Johannes Meyer 938da806ca Repository: Recurse a filter in the repository instead of in the query
This allows to recurse and adjust a filter outside the query context as well

refs #8826
2015-05-08 12:15:02 +02:00
Johannes Meyer f383ddd00a Repository: Add support for client side value conversion
refs #8826
2015-05-07 14:49:13 +02:00
Johannes Meyer eac5e398be Repository: Initialize the internal column and table maps lazily as well
refs #8826
2015-05-07 09:04:50 +02:00
Johannes Meyer 99be358714 Repository: Make it possible to initialize column properties lazily
refs #8826
2015-05-07 08:28:32 +02:00
Johannes Meyer ba4330de43 Repository: We do not overwrite properties, we're initializing them
refs #8826
2015-05-07 08:03:07 +02:00
Johannes Meyer 3b93b84ecf Introduce class Icinga\Repository\Repository
refs #8826
2015-05-04 11:37:48 +02:00