374 Commits

Author SHA1 Message Date
Thomas Gelf
820b6b7a8d Data\BaseQuery: rename to Data\SimpleQuery
BaseQuery should no longer be abstract but be usable as is as soon as
we stripped ResultSet-specific tasks. As "Base" suggests something that
must be extended, the name no longer fits. So this is SimpleQuery right
now.
2014-05-07 11:55:35 +00:00
Eric Lippmann
ecbd9b8616 Sortable: Fix PHPDoc for parameter `$direction'
`$direction' must be a string instead of an integer because
the direction constants `SORT_ASC' and `SORT_DESC' are strings.
2014-05-07 10:00:41 +02:00
Eric Lippmann
d87788b9c1 Merge branch 'master' into feature/query-interfaces-6018
Conflicts:
	modules/monitoring/library/Monitoring/Backend/Ido/Query/ContactgroupQuery.php
2014-05-06 18:45:12 +02:00
Matthias Jentsch
085025ba7d Icingaweb shoul work without optional extensions when they are not used
When optional classes and php extensions like pgsql and additonal Zend-Pdos are
actually required by creating a new resource or authentication backend,
perform a check and display a warning instead of just throwing an exception.

refs #4788
2014-04-28 17:13:40 +02:00
Johannes Meyer
aaa6a56146 Refactor authentication config form tests and fix auth backend validation
refs #6011
fixes #5712
2014-04-28 14:06:38 +02:00
Eric Lippmann
026145356b Add interface "QueryInterface" implementing Browsable, Fetchable, Filterable, Limitable, Sortable, Countable (WIP)
This interface is intended to be used within the data views and monitoring controllers. The monitoring list
and show controllers should only query data views instead of the actual query. Thus a data view is required to
implement the QueryInterface, which will be changed later.
The name is not final because it somehow conflicts with the Queryable interface which is also marked as work in progress.
2014-04-17 14:21:01 +02:00
Eric Lippmann
8532622fab Db: Implement missing fetch*() functions on connection level
The BaseQuery forwards fetch*() function calls to its datasource with the
query as first parameter since the datasource implements the actual fetching functionality.
There's no interface for fetch*() functions on the datasource level yet.
2014-04-15 17:44:34 +02:00
Eric Lippmann
e525688383 Replace DatasourceInterface with Selectable 2014-04-15 17:43:45 +02:00
Eric Lippmann
1a2577dd47 Db/Connection: Replace getConnection() with getDpAdapter()
For readability getConnection() is deprecated in favor of getDpAdapter()
since Db/Connection is already the connection.
2014-04-15 17:37:44 +02:00
Eric Lippmann
c85ade39c0 Create count and select database queries separately
The previous implementation always created both the count
and the select query.
For readability the property baseQuery has been renamed to select which the
IDO queries must take into account.
2014-04-15 17:21:10 +02:00
Eric Lippmann
d94170372d Let the BaseQuery implement the query interfaces and remove filter functionality
This commit breaks the application as it introduces incompatible changes which
will be adopted bit by bit.

Since the filter functionality is subject to change it's removed from the BaseQuery.
The functions setOrderColumns() and getOrderColumns() are deprecated because they're
replaced by functions in the Sortable interface.
Further the Sortable interface now defines the sort constants ASC and DESC and are
thus removed from the BaseQuery. In addition the sort constants are no longer integers
but strings.
The distinct() and isDistinct() functions are removed because they're database specific.
They have been introduced with changes in the PivotTable implementation which should
actually not call distinct blindly anyway.
2014-04-15 16:40:25 +02:00
Eric Lippmann
659e6f774e Add interface "Queryable" (WIP)
Interface for classes which act as a data source and thus return or are a Fetchable.
The name of the interface is not yet final though.
2014-04-15 16:23:17 +02:00
Eric Lippmann
0f3d70c437 Add interface "Filterable" (WIP)
This interface is empty yet. It's meant to define how to filter a result set.
2014-04-15 16:20:11 +02:00
Eric Lippmann
e5e3dc9c43 Add interface "Sortable" defining how a result set can be sorted
This interface should be used to ensure that sorting a result set
is standardized among the different query implementations.
2014-04-15 16:07:27 +02:00
Eric Lippmann
3e0d254dfd Implement "Limitable" interface for retrieving just a portion of a result set
Defines how to set a limit count and offset and should be used everywhere
where setting limit and offset is supported.
2014-04-15 15:48:51 +02:00
Eric Lippmann
c083747f67 Add "Fetchable" interface for classes providing data retrieval
Classes for retrieving data must implement the Fetchable interface
which defines the usual fetch*() functions.
2014-04-15 15:40:07 +02:00
Eric Lippmann
2cc3823a95 Implement interface "Browsable" for classes providing page turning
This interface is intended to be used everywhere a Zend_Paginator
is returned within our code.
2014-04-15 15:36:13 +02:00
Alexander Klimov
933a851f65 Initial commit
refs #4514
2014-04-02 13:47:01 +02:00
Johannes Meyer
862b50264a Fix that the queryfilter parser cannot handle integer values 2014-04-01 11:44:24 +02:00
Johannes Meyer
b168cf878d Fix type specification in DowntimestarthistoryQuery
refs #4190
2014-04-01 11:44:23 +02:00
Johannes Meyer
ea473cf08a Fix sorting of pivot tables 2014-03-20 13:21:28 +01:00
Johannes Meyer
bf717654f0 Add more consistency to the servicematrix when switching pages 2014-03-20 11:30:55 +01:00
Johannes Meyer
1604f4728b Fix that the TreeToSqlParser cannot handle partial conjunction nodes 2014-03-19 09:11:25 +01:00
Johannes Meyer
e355415164 Fix that queryfilters are being ignored by the parser 2014-03-19 09:11:25 +01:00
Johannes Meyer
617b6822d7 Add pagination support to the servicematrix
refs #4180
2014-03-19 09:11:24 +01:00
Johannes Meyer
dbab546f0a Make page/limit params work if either of those is hardcoded 2014-03-19 09:11:24 +01:00
Johannes Meyer
eae4cd3b2a Add support for distinct database queries
refs #4180
2014-03-19 09:11:24 +01:00
Johannes Meyer
13b509bf4b Do not display hosts without any services in the servicematrix
refs #4180
2014-03-19 09:11:24 +01:00
Johannes Meyer
0a5c2c5bd7 Make filtering/sorting of the servicematrix work
refs #4180
2014-03-19 09:11:24 +01:00
Johannes Meyer
71f4b6960b Add servicematrix view
refs #4180
2014-03-19 09:11:24 +01:00
Thomas Gelf
7fc47ef961 Increase DB-Connection default timeout, 2 secs are sometimes too harsh 2014-03-17 16:17:55 +00:00
Alexander Klimov
b410ebeed6 Remove unnecessary spaces at end of line 2014-03-06 13:08:11 +01:00
Eric Lippmann
07d04628cf Merge branch 'feature/installation-and-configuration-cleanup-5638'
Conflicts:
	config/config.ini.in
	library/Icinga/Application/ApplicationBootstrap.php
	library/Icinga/Application/Cli.php
	library/Icinga/Application/EmbeddedWeb.php
	library/Icinga/Application/Logger.php
	library/Icinga/Application/Modules/Manager.php
	library/Icinga/Application/Web.php
	library/Icinga/Authentication/Backend/DbUserBackend.php
	library/Icinga/Authentication/Manager.php
	library/Icinga/User/Preferences/IniStore.php
	test/php/library/Icinga/Application/LoggerTest.php
2014-03-03 19:03:39 +01:00
Johannes Meyer
3555e66018 Make IcingaWeb using the new log wrapper
refs #5683
2014-02-26 11:19:52 +01:00
Johannes Meyer
68357e9ca2 Fix coding style 2014-02-21 14:07:32 +01:00
Eric Lippmann
25665dec24 Vagrant: Add authentication.ini and resources.ini to /etc/icingaweb
refs #5638
2014-02-21 10:16:16 +01:00
Thomas Gelf
d63fee064d Make sure DB profiler is disabled per default to avoid memory leaks 2014-02-14 13:51:28 +00:00
Thomas Gelf
32c897c0c9 Added some benchmark noise to DB queries
We need this to track down current performance issues, refs #5534
2014-01-22 12:36:44 +00:00
Thomas Gelf
ad7e4451eb There is no "The" and no "Optional" Data class 2014-01-22 12:34:46 +00:00
Matthias Jentsch
2cf154310b Add controller to handle resource configuration
Add the controller, forms and views to handle the resource configuration.

refs #4786
2013-11-06 19:02:30 +01:00
Matthias Jentsch
59d4baff0b Fix remaining references to DbUserBackend and refresh the documentation.
refs #4786
2013-11-06 13:31:07 +01:00
Matthias Jentsch
ad08691362 Extend resources.ini to contain all resources, including ldap
Remove the old calls to DbAdapterFactory and use ResourceFactory instead. Remove
the DbAdapterFactory and fix all unit tests that have been broken due to the changes.
Change the functionality of the ResourceFactory to also handle LdapConnections

resolves #4587
2013-11-06 10:20:15 +01:00
Eric Lippmann
ca1d50ae53 Rename Icinga 2 Web to Icinga Web 2 2013-10-23 15:11:06 +02:00
Jannis Moßhammer
dc5182d4bf CommandHandler now uses Status/HostView, fix sql IN-Query bug 2013-10-23 10:19:55 +02:00
Thomas Gelf
5d3fbd1cdf We need a Livestatus factory 2013-10-22 20:21:03 +00:00
Marius Hein
b9f03e27b7 Fix backend configuration while installation
refs #4941
2013-10-22 17:50:21 +02:00
Jannis Moßhammer
c4f3e78c02 Fix filter behaviour, fix statusdat filter
refs #4469
2013-10-21 17:04:39 +02:00
Jannis Moßhammer
f350011028 Add Status.dat backend
refs #3801
2013-10-20 15:16:44 +02:00
Jannis Moßhammer
6095a71a8d CS Fixes
refs #4868
2013-10-17 21:40:02 +02:00
Jannis Moßhammer
4a95ba3468 Change url handling to detail on hashtag, add service filter
The url is now
http://%mainUrl%#%anchor%!detail=%detailUrl%
which allows us to better support IE and prevents
the detail url from appearing on the server side.

refs #4868
2013-10-17 19:55:00 +02:00