diff --git a/src/backendless.d.ts b/src/backendless.d.ts index bf4245a4..5d1f3eaa 100644 --- a/src/backendless.d.ts +++ b/src/backendless.d.ts @@ -404,8 +404,8 @@ declare module __Backendless { loadRelations(parentObjectId:string, query:Backendless.LoadRelationsQueryBuilder):Promise>; loadRelationsSync(parentObjectId:string, query:Backendless.LoadRelationsQueryBuilder):Array; - getObjectCount(query?:Backendless.DataQueryBuilder):Promise - getObjectCountSync(query?:Backendless.DataQueryBuilder):number + getObjectCount(query?:Backendless.DataQueryBuilder|string):Promise + getObjectCountSync(query?:Backendless.DataQueryBuilder|string):number setRelation(parentObject:Object, columnName:string, childObjectsArray:Array):Promise; setRelation(parentObject:Object, columnName:string, childObjectIdArray:Array):Promise; diff --git a/src/backendless.js b/src/backendless.js index 45d1a8d0..db959eac 100644 --- a/src/backendless.js +++ b/src/backendless.js @@ -1377,7 +1377,7 @@ /** * Count of object * - * @param {DataQueryBuilder} [queryBuilder] + * @param {String|DataQueryBuilder} [condition] * * @return {Promise} */ @@ -1386,27 +1386,33 @@ /** * Count of object (sync) * - * @param {DataQueryBuilder} [queryBuilder] + * @param {String|DataQueryBuilder} [condition] * * @return {number} */ getObjectCountSync: synchronized('_getObjectCount'), - _getObjectCount: function(queryBuilder, async) { - var args = this._parseFindArguments(arguments); - var dataQuery = args.queryBuilder ? args.queryBuilder.build() : {}; + _getObjectCount: function(condition, async) { + if (condition instanceof Async) { + async = condition; + condition = null; + } + + if (condition instanceof Backendless.DataQueryBuilder) { + condition = condition.build().condition; + } + var url = this.restUrl + '/count'; - var isAsync = !!args.async; - if (dataQuery.condition) { - url += '?where=' + encodeURIComponent(dataQuery.condition); + if (condition) { + url += '?where=' + encodeURIComponent(condition); } return Backendless._ajax({ method : 'GET', url : url, - isAsync : isAsync, - asyncHandler: args.async + isAsync : !!async, + asyncHandler: async }); },