Utility service to convert search string and query language to filter params that can be used with other keta services.
- Copyright:
- Kiwigrid GmbH 2015
- Source:
Classes
Methods
-
<inner> getFilterParams(filterString, criteriaMapping) → {Object}
-
Set filter params to all criteria or define them by query language. If inserted string is "owner:test_user", only items with owner test_user will be returned and if you insert "test_user", items with test_user in this criterion will be returned.
Parameters:
Name Type Description filterString
String Search string or query language string. criteriaMapping
Object criteria to search in or convert key to criteria. - Source:
Returns:
Object Params to filter EventBusManager request.Example
angular.module('exampleApp', [ 'keta.utils.Api', 'keta.services.EventBusManager', 'keta.services.DeviceSet' ]) .controller('ExampleController', function( ketaApiUtils, ketaEventBusManager, ketaDeviceSet, ) { // search scope model for an input to get the search string $scope.searchString = ''; // set search criteria var searchCriteria = { name: 'tagValues.IdName.value', owner: 'owner' }; // get filter params var filter = ketaApiUtils.getFilterParams($scope.searchString, searchCriteria); // get reply by filter ketaDeviceSet.create(ketaEventBusManager.get('kiwibus')) .filter(filter) .project({ tagValues: { IdName: 1 }, owner: 1 }) .query() .then(function(reply) { // ... }); });