@sap/cds 8.9.4 → 9.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +113 -680
- package/LICENSE +15 -21
- package/README.md +1 -1
- package/_i18n/i18n_sl.properties +3 -3
- package/_i18n/messages.properties +1 -1
- package/app/index.js +1 -1
- package/bin/serve.js +17 -19
- package/eslint.config.mjs +7 -1
- package/lib/compile/etc/_localized.js +3 -24
- package/lib/compile/etc/yaml.js +6 -15
- package/lib/compile/for/odata.js +2 -2
- package/lib/compile/load.js +15 -4
- package/lib/compile/minify.js +1 -0
- package/lib/compile/to/edm-files.js +4 -33
- package/lib/compile/to/hdbtabledata.js +16 -3
- package/lib/compile/to/sql.js +1 -2
- package/lib/core/linked-csn.js +7 -8
- package/lib/dbs/cds-deploy.js +4 -3
- package/lib/env/cds-env.js +9 -9
- package/lib/env/cds-requires.js +23 -50
- package/lib/env/defaults.js +15 -44
- package/lib/env/schemas/cds-package.js +1 -1
- package/lib/i18n/index.js +1 -0
- package/lib/i18n/locale.js +41 -0
- package/lib/index.js +25 -15
- package/lib/log/cds-error.js +12 -3
- package/lib/log/cds-log.js +43 -18
- package/lib/log/format/aspects/als.js +2 -15
- package/lib/plugins.js +11 -11
- package/lib/ql/CREATE.js +1 -1
- package/lib/ql/DELETE.js +1 -1
- package/lib/ql/DROP.js +1 -1
- package/lib/ql/INSERT.js +9 -18
- package/lib/ql/SELECT.js +12 -19
- package/lib/ql/UPDATE.js +1 -1
- package/lib/ql/UPSERT.js +1 -0
- package/lib/ql/Whereable.js +7 -6
- package/lib/ql/cds-ql.js +0 -12
- package/lib/ql/cds.ql-Query.js +28 -68
- package/lib/ql/cds.ql-infer.js +97 -108
- package/lib/ql/resolve.js +1 -3
- package/lib/req/context.js +5 -4
- package/lib/req/request.js +46 -42
- package/lib/req/response.js +5 -9
- package/lib/req/spawn.js +38 -0
- package/lib/req/validate.js +9 -8
- package/lib/srv/bindings.js +2 -1
- package/lib/srv/cds-connect.js +5 -2
- package/lib/srv/cds-serve.js +0 -2
- package/lib/srv/cds.Service.js +146 -86
- package/lib/srv/middlewares/auth/ias-auth.js +99 -88
- package/lib/srv/middlewares/auth/jwt-auth.js +44 -57
- package/lib/srv/middlewares/cds-context.js +1 -1
- package/lib/srv/middlewares/ctx-model.js +1 -1
- package/lib/srv/middlewares/errors.js +34 -42
- package/lib/srv/protocols/hcql.js +35 -25
- package/lib/srv/protocols/index.js +0 -9
- package/lib/srv/protocols/odata-v4.js +1 -6
- package/lib/srv/srv-dispatch.js +29 -31
- package/lib/srv/srv-handlers.js +14 -46
- package/lib/srv/srv-methods.js +15 -37
- package/lib/srv/srv-tx.js +19 -25
- package/lib/test/cds-test.js +4 -263
- package/lib/utils/cds-utils.js +18 -2
- package/lib/utils/tar.js +6 -8
- package/lib/utils/unit.js +19 -0
- package/libx/_runtime/.eslintrc +1 -1
- package/libx/_runtime/cds-services/util/assert.js +2 -72
- package/libx/_runtime/cds.js +13 -6
- package/libx/_runtime/common/Service.js +33 -75
- package/libx/_runtime/common/aspects/any.js +0 -38
- package/libx/_runtime/common/constants/events.js +5 -13
- package/libx/_runtime/common/generic/auth/autoexpose.js +10 -24
- package/libx/_runtime/common/generic/auth/capabilities.js +23 -20
- package/libx/_runtime/common/generic/auth/expand.js +3 -3
- package/libx/_runtime/common/generic/auth/index.js +3 -3
- package/libx/_runtime/common/generic/auth/insertOnly.js +3 -3
- package/libx/_runtime/common/generic/auth/readOnly.js +4 -4
- package/libx/_runtime/common/generic/auth/requires.js +4 -4
- package/libx/_runtime/common/generic/auth/restrict.js +12 -29
- package/libx/_runtime/common/generic/auth/service.js +3 -3
- package/libx/_runtime/common/generic/auth/utils.js +2 -12
- package/libx/_runtime/common/generic/crud.js +22 -53
- package/libx/_runtime/common/generic/etag.js +18 -31
- package/libx/_runtime/common/generic/input.js +51 -123
- package/libx/_runtime/common/generic/paging.js +4 -4
- package/libx/_runtime/common/generic/sorting.js +8 -19
- package/libx/_runtime/common/generic/stream-only.js +26 -0
- package/libx/_runtime/common/generic/stream.js +16 -48
- package/libx/_runtime/common/generic/temporal.js +15 -6
- package/libx/_runtime/common/utils/binary.js +1 -26
- package/libx/_runtime/common/utils/compareJson.js +1 -2
- package/libx/_runtime/common/utils/cqn.js +15 -14
- package/libx/_runtime/common/utils/differ.js +121 -44
- package/libx/_runtime/common/utils/keys.js +4 -5
- package/libx/_runtime/common/utils/postProcess.js +2 -2
- package/libx/_runtime/common/utils/propagateForeignKeys.js +21 -36
- package/libx/_runtime/common/utils/resolveView.js +105 -141
- package/libx/_runtime/common/utils/rewriteAsterisks.js +45 -12
- package/libx/_runtime/common/utils/streamProp.js +3 -9
- package/libx/_runtime/common/utils/waitingTime.js +13 -1
- package/libx/_runtime/fiori/lean-draft.js +174 -196
- package/libx/_runtime/messaging/common-utils/connections.js +1 -1
- package/libx/_runtime/messaging/enterprise-messaging-utils/EMManagement.js +1 -0
- package/libx/_runtime/messaging/enterprise-messaging-utils/registerEndpoints.js +3 -3
- package/libx/_runtime/messaging/enterprise-messaging.js +2 -2
- package/libx/_runtime/messaging/file-based.js +2 -4
- package/libx/_runtime/messaging/redis-messaging.js +1 -1
- package/libx/_runtime/messaging/service.js +5 -19
- package/libx/_runtime/remote/Service.js +20 -33
- package/libx/_runtime/remote/utils/client.js +7 -25
- package/libx/_runtime/remote/utils/cloudSdkProvider.js +8 -13
- package/libx/_runtime/remote/utils/data.js +3 -34
- package/libx/_runtime/types/api.js +0 -8
- package/libx/_runtime/ucl/Service.js +1 -9
- package/libx/common/utils/path.js +2 -3
- package/libx/common/utils/streaming.js +2 -1
- package/libx/http/HttpRequest.js +13 -0
- package/libx/{odata/middleware → http}/body-parser.js +7 -5
- package/libx/http/location.js +41 -0
- package/libx/http/put.js +36 -0
- package/libx/odata/ODataAdapter.js +25 -59
- package/libx/odata/index.js +10 -23
- package/libx/odata/middleware/batch.js +29 -20
- package/libx/odata/middleware/create.js +6 -13
- package/libx/odata/middleware/delete.js +0 -4
- package/libx/odata/middleware/error.js +83 -27
- package/libx/odata/middleware/metadata.js +14 -25
- package/libx/odata/middleware/operation.js +10 -26
- package/libx/odata/middleware/read.js +10 -18
- package/libx/odata/middleware/stream.js +14 -34
- package/libx/odata/middleware/update.js +17 -26
- package/libx/odata/parse/afterburner.js +20 -16
- package/libx/odata/parse/cqn2odata.js +3 -1
- package/libx/odata/parse/grammar.peggy +221 -114
- package/libx/odata/parse/parser.js +1 -1
- package/libx/odata/utils/index.js +10 -38
- package/libx/odata/utils/metadata.js +1 -4
- package/libx/odata/utils/normalizeTimeData.js +4 -7
- package/libx/odata/utils/readAfterWrite.js +1 -1
- package/libx/{outbox/OutboxRunner.js → queue/TaskRunner.js} +17 -22
- package/libx/queue/index.js +530 -0
- package/libx/rest/RestAdapter.js +43 -82
- package/libx/rest/middleware/create.js +35 -33
- package/libx/rest/middleware/delete.js +9 -7
- package/libx/rest/middleware/error.js +11 -18
- package/libx/rest/middleware/operation.js +44 -137
- package/libx/rest/middleware/parse.js +114 -130
- package/libx/rest/middleware/read.js +23 -21
- package/libx/rest/middleware/update.js +20 -32
- package/libx/rest/middleware/upsert.js +31 -0
- package/libx/rest/pre-processing.js +8 -18
- package/package.json +6 -7
- package/srv/outbox.cds +1 -0
- package/bin/test.js +0 -125
- package/lib/env/plugins.js +0 -18
- package/lib/req/cds-context.js +0 -52
- package/lib/req/locale.js +0 -35
- package/lib/srv/cds.ServiceClient.js +0 -96
- package/lib/srv/cds.ServiceProvider.js +0 -20
- package/lib/srv/protocols/okra.js +0 -22
- package/lib/test/axios.js +0 -63
- package/lib/test/data.js +0 -52
- package/lib/test/expect.js +0 -343
- package/lib/test/reporter.js +0 -176
- package/libx/_runtime/cds-services/adapter/odata-v4/OData.js +0 -275
- package/libx/_runtime/cds-services/adapter/odata-v4/ODataRequest.js +0 -217
- package/libx/_runtime/cds-services/adapter/odata-v4/handlers/action.js +0 -101
- package/libx/_runtime/cds-services/adapter/odata-v4/handlers/create.js +0 -79
- package/libx/_runtime/cds-services/adapter/odata-v4/handlers/debug.js +0 -6
- package/libx/_runtime/cds-services/adapter/odata-v4/handlers/delete.js +0 -60
- package/libx/_runtime/cds-services/adapter/odata-v4/handlers/error.js +0 -161
- package/libx/_runtime/cds-services/adapter/odata-v4/handlers/language.js +0 -7
- package/libx/_runtime/cds-services/adapter/odata-v4/handlers/metadata.js +0 -59
- package/libx/_runtime/cds-services/adapter/odata-v4/handlers/read.js +0 -602
- package/libx/_runtime/cds-services/adapter/odata-v4/handlers/request.js +0 -64
- package/libx/_runtime/cds-services/adapter/odata-v4/handlers/update.js +0 -238
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/ExpressionToCQN.js +0 -327
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/applyToCQN.js +0 -243
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/boundToCQN.js +0 -43
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/createToCQN.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/deleteToCQN.js +0 -36
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/expandToCQN.js +0 -250
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/index.js +0 -81
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/orderByToCQN.js +0 -51
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/readToCQN.js +0 -389
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/searchToCQN.js +0 -43
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/selectToCQN.js +0 -35
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/updateToCQN.js +0 -38
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/utils.js +0 -217
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/FeatureSupport.js +0 -70
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/FullQualifiedName.js +0 -94
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlAction.js +0 -139
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlActionImport.js +0 -82
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlAliasInfo.js +0 -44
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlAnnotation.js +0 -104
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlAnnotations.js +0 -71
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlComplexType.js +0 -133
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlEntityContainer.js +0 -142
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlEntityContainerInfo.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlEntitySet.js +0 -107
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlEntityType.js +0 -177
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlEnumMember.js +0 -61
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlEnumType.js +0 -105
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlFunction.js +0 -149
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlFunctionImport.js +0 -105
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlInclude.js +0 -68
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlIncludeAnnotation.js +0 -71
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlJsonProvider.js +0 -1365
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlNavigationProperty.js +0 -190
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlNavigationPropertyBinding.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlOnDelete.js +0 -70
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlParameter.js +0 -227
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlProperty.js +0 -250
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlPropertyRef.js +0 -49
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlProvider.js +0 -190
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlReference.js +0 -97
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlReferentialConstraint.js +0 -60
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlReturnType.js +0 -216
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlSchema.js +0 -328
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlSingleton.js +0 -84
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlTerm.js +0 -320
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/CsdlTypeDefinition.js +0 -193
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlAnnotationExpression.js +0 -73
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlAnnotationPathExpression.js +0 -33
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlApplyExpression.js +0 -105
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlArithmeticExpression.js +0 -72
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlBinaryExpression.js +0 -110
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlCastExpression.js +0 -188
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlCollectionExpression.js +0 -48
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlConstantExpression.js +0 -116
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlIfExpression.js +0 -62
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlIsOfExpression.js +0 -200
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlLabeledElementExpression.js +0 -42
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlLabeledElementReferenceExpression.js +0 -31
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlModelElementPathExpression.js +0 -29
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlNavigationPropertyPathExpression.js +0 -31
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlNegationExpression.js +0 -27
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlNotExpression.js +0 -31
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlNullExpression.js +0 -18
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlPathExpression.js +0 -32
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlPropertyPathExpression.js +0 -32
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlPropertyValueExpression.js +0 -55
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlRecordExpression.js +0 -54
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlUnknownExpression.js +0 -44
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/csdl/annotationExpression/CsdlUrlRefExpression.js +0 -31
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/AbstractEdmBindingTarget.js +0 -163
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/AbstractEdmFaceted.js +0 -136
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/AbstractEdmOperation.js +0 -205
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/AbstractEdmOperationImport.js +0 -126
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/AbstractEdmStructuredType.js +0 -275
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/Edm.js +0 -775
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmAction.js +0 -15
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmActionImport.js +0 -39
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmAnnotation.js +0 -106
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmAnnotations.js +0 -57
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmComplexType.js +0 -48
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmEntityContainer.js +0 -455
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmEntitySet.js +0 -43
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmEntityType.js +0 -119
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmEnumMember.js +0 -69
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmEnumType.js +0 -117
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmFunction.js +0 -39
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmFunctionImport.js +0 -59
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmInclude.js +0 -65
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmIncludeAnnotation.js +0 -48
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmKeyPropertyRef.js +0 -79
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmNavigationProperty.js +0 -182
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmNavigationPropertyBinding.js +0 -46
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmOnDelete.js +0 -44
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmParameter.js +0 -22
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmPrimitiveType.js +0 -31
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmPrimitiveTypeKind.js +0 -70
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmProperty.js +0 -39
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmProvider.js +0 -399
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmReference.js +0 -88
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmReferentialConstraint.js +0 -71
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmReturnType.js +0 -14
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmSchema.js +0 -355
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmSingleton.js +0 -15
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmTerm.js +0 -75
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmType.js +0 -95
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmTypeDefinition.js +0 -121
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmTypeFactory.js +0 -28
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/EdmVocabularyTermType.js +0 -41
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/KeyFactory.js +0 -67
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/Target.js +0 -56
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/TransientStructuredType.js +0 -244
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/AnnotationExpressionFactory.js +0 -130
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmAnnotationExpression.js +0 -28
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmAnnotationPathExpression.js +0 -42
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmApplyExpression.js +0 -85
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmArithmeticExpression.js +0 -92
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmBinaryExpression.js +0 -96
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmCastExpression.js +0 -129
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmCollectionExpression.js +0 -52
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmConstantExpression.js +0 -83
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmIfExpression.js +0 -103
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmIsOfExpression.js +0 -125
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmLabeledElementExpression.js +0 -83
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmLabeledElementReferenceExpression.js +0 -41
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmModelElementPathExpression.js +0 -35
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmNavigationPropertyPathExpression.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmNegationExpression.js +0 -70
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmNotExpression.js +0 -75
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmNullExpression.js +0 -50
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmPathExpression.js +0 -38
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmPropertyPathExpression.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmPropertyValueExpression.js +0 -72
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmRecordExpression.js +0 -100
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmUnknownExpression.js +0 -72
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/edm/annotationExpression/EdmUrlRefExpression.js +0 -73
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/errors/AbstractError.js +0 -82
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/errors/IllegalArgumentError.js +0 -58
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/errors/IllegalCallError.js +0 -21
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/errors/NotImplementedError.js +0 -19
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/errors/UriQueryOptionSemanticError.js +0 -49
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/errors/UriSemanticError.js +0 -48
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/errors/UriSyntaxError.js +0 -65
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/format/ContentTypeInfo.js +0 -105
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/format/JsonContentTypeInfo.js +0 -83
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/format/JsonFormat.js +0 -141
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/format/RepresentationKind.js +0 -251
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/http/HttpHeader.js +0 -42
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/http/HttpHeaderReader.js +0 -318
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/http/HttpMethod.js +0 -25
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/http/HttpStatusCode.js +0 -52
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/http/Preferences.js +0 -32
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/index.js +0 -69
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/logging/LoggerFacade.js +0 -183
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/AliasExpression.js +0 -47
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/ApplyParser.js +0 -946
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/BinaryExpression.js +0 -124
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/ExpandItem.js +0 -76
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/ExpandParser.js +0 -384
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/Expression.js +0 -46
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/ExpressionParser.js +0 -1988
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/FilterParser.js +0 -34
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/FunctionParameterParser.js +0 -106
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/KeyPredicateParser.js +0 -155
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/KeyValueParser.js +0 -213
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/LiteralExpression.js +0 -43
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/MemberExpression.js +0 -44
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/MethodExpression.js +0 -146
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/OrderByItem.js +0 -53
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/OrderByParser.js +0 -69
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/ResourcePathParser.js +0 -848
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/SearchParser.js +0 -127
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/SelectItem.js +0 -80
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/SelectParser.js +0 -294
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/TypeLiteralExpression.js +0 -28
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/UnaryExpression.js +0 -64
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/UriHelper.js +0 -65
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/UriInfo.js +0 -165
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/UriParameter.js +0 -107
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/UriParser.js +0 -350
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/UriResource.js +0 -602
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/UriTokenizer.js +0 -1156
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/AggregateExpression.js +0 -164
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/AggregateTransformation.js +0 -38
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/BottomTopTransformation.js +0 -93
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/ComputeExpression.js +0 -52
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/ComputeTransformation.js +0 -38
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/ConcatTransformation.js +0 -38
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/CustomFunctionTransformation.js +0 -59
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/ExpandTransformation.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/FilterTransformation.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/GroupByItem.js +0 -71
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/GroupByTransformation.js +0 -58
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/IdentityTransformation.js +0 -17
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/OrderByTransformation.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/SearchTransformation.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/SkipTransformation.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/TopTransformation.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/apply/Transformation.js +0 -53
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/uri/info.md +0 -116
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/utils/PrimitiveValueDecoder.js +0 -667
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/utils/PrimitiveValueEncoder.js +0 -349
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/utils/ValueConverter.js +0 -545
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/validator/ParameterValidator.js +0 -124
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-commons/validator/ValueValidator.js +0 -743
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/ServiceFactory.js +0 -234
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/batch/BatchContext.js +0 -351
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/batch/BatchErrorInfo.js +0 -61
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/batch/BatchExitHandler.js +0 -239
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/batch/BatchProcessor.js +0 -281
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/batch/BatchValidator.js +0 -133
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/batch/BatchedRequestExecutor.js +0 -92
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/ComponentManager.js +0 -63
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/Context.js +0 -96
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/Dispatcher.js +0 -147
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/OdataRequest.js +0 -458
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/OdataRequestInBatch.js +0 -147
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/OdataResponse.js +0 -314
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/OdataResponseInBatch.js +0 -83
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/PlainHttpRequest.js +0 -175
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/PlainHttpResponse.js +0 -106
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/RequestContract.js +0 -111
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/ResponseContract.js +0 -111
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/ResponseHeaderSetter.js +0 -240
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/Service.js +0 -417
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/core/ServiceResolutions.js +0 -24
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/ApplicationHttpReader.js +0 -157
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/BatchJsonDeserializer.js +0 -171
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/BatchRequestListBuilder.js +0 -196
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/Cache.js +0 -154
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/ContentDeserializer.js +0 -222
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/DataReader.js +0 -220
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/DeserializerFactory.js +0 -240
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/HeaderReader.js +0 -133
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/LineReader.js +0 -61
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/MultipartReader.js +0 -419
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/PartReader.js +0 -99
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/Reader.js +0 -52
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/deserializer/ResourceJsonDeserializer.js +0 -673
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/ApplicationError.js +0 -108
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/BadRequestError.js +0 -21
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/ConflictError.js +0 -11
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/DeserializationError.js +0 -19
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/InternalServerError.js +0 -20
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/MethodNotAllowedError.js +0 -17
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/NotAcceptableError.js +0 -21
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/NotFoundError.js +0 -33
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/PreconditionFailedError.js +0 -11
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/PreconditionRequiredError.js +0 -11
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/SerializationError.js +0 -19
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/errors/UnauthorizedError.js +0 -17
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/format/AcceptTypeInfo.js +0 -86
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/format/CharsetInfo.js +0 -76
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/format/FormatDescription.js +0 -43
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/format/FormatManager.js +0 -91
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/format/RequestContentNegotiator.js +0 -62
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/format/ResponseContentNegotiator.js +0 -321
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/handler/BatchHandler.js +0 -36
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/handler/MetadataHandler.js +0 -21
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/handler/ServiceHandler.js +0 -25
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/http/CustomPreference.js +0 -31
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/http/HeaderInfo.js +0 -79
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/http/HttpHeader.js +0 -59
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/http/HttpHeaderReader.js +0 -452
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/http/HttpStatusCode.js +0 -117
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/http/Preferences.js +0 -222
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/http/PreferencesApplied.js +0 -199
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/index.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/Command.js +0 -31
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/CommandExecutor.js +0 -94
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/CommandFactory.js +0 -203
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/ConditionalRequestControlCommand.js +0 -52
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/ConditionalRequestPreValidationCommand.js +0 -59
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/ContentNegotiatorCommand.js +0 -70
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/DebugContentNegotiatorCommand.js +0 -59
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/DebugDeserializingCommand.js +0 -44
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/DebugSerializingCommand.js +0 -51
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/DeserializingCommand.js +0 -69
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/DispatcherCommand.js +0 -95
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/ErrorContentNegotiatorCommand.js +0 -44
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/ErrorSerializingCommand.js +0 -51
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/EventListenerCommand.js +0 -59
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/LocaleNegotiatorCommand.js +0 -56
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/OdataVersionValidationCommand.js +0 -41
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/OperationValidationCommand.js +0 -34
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/ParsePreferHeaderCommand.js +0 -47
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/PresetResponseHeadersCommand.js +0 -47
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/QueryOptionsParserCommand.js +0 -43
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/QueryOptionsValidationCommand.js +0 -62
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/RequestContentValidationCommand.js +0 -51
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/SendResponseCommand.js +0 -37
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/SerializingCommand.js +0 -159
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/SetResponseHeadersCommand.js +0 -90
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/SetStatuscodeCommand.js +0 -51
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/invocation/UriParserCommand.js +0 -47
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/logging/DebugLogger.js +0 -97
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/ApplicationHttpWriter.js +0 -65
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/BatchJsonSerializer.js +0 -46
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/BatchMultipartSerializer.js +0 -113
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/ContextURLFactory.js +0 -405
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/DebugHtmlSerializer.js +0 -302
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/DebugJsonSerializer.js +0 -515
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/ErrorJsonSerializer.js +0 -47
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/ErrorSerializer.js +0 -39
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/ErrorXmlSerializer.js +0 -98
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/ExpressionTreeImage.js +0 -404
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/MetadataXmlSerializer.js +0 -1416
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/MultipartWriter.js +0 -202
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/NextLinkSerializer.js +0 -330
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/ResourceJsonSerializer.js +0 -1220
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/SerializerFactory.js +0 -484
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/ServiceJsonSerializer.js +0 -89
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/TrustedResourceJsonSerializer.js +0 -612
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/serializer/debugview.html +0 -157
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/utils/BufferedWriter.js +0 -59
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/utils/ExpandHelper.js +0 -96
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/utils/MetadataCache.js +0 -136
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/utils/PerformanceMonitor.js +0 -221
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/utils/UriHelper.js +0 -157
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/validator/ConditionalRequestValidator.js +0 -79
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/validator/OperationValidator.js +0 -199
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/validator/RequestValidator.js +0 -392
- package/libx/_runtime/cds-services/adapter/odata-v4/okra/odata-server/validator/VersionValidator.js +0 -62
- package/libx/_runtime/cds-services/adapter/odata-v4/to.js +0 -51
- package/libx/_runtime/cds-services/adapter/odata-v4/utils/data.js +0 -331
- package/libx/_runtime/cds-services/adapter/odata-v4/utils/handlerUtils.js +0 -159
- package/libx/_runtime/cds-services/adapter/odata-v4/utils/metaInfo.js +0 -404
- package/libx/_runtime/cds-services/adapter/odata-v4/utils/oDataConfiguration.js +0 -55
- package/libx/_runtime/cds-services/adapter/odata-v4/utils/omitValues.js +0 -86
- package/libx/_runtime/cds-services/adapter/odata-v4/utils/readAfterWrite.js +0 -107
- package/libx/_runtime/cds-services/adapter/odata-v4/utils/request.js +0 -64
- package/libx/_runtime/cds-services/adapter/odata-v4/utils/result.js +0 -385
- package/libx/_runtime/cds-services/adapter/odata-v4/utils/stream.js +0 -12
- package/libx/_runtime/cds-services/util/errors.js +0 -15
- package/libx/_runtime/common/aspects/relation.js +0 -40
- package/libx/_runtime/common/composition/data.js +0 -370
- package/libx/_runtime/common/composition/delete.js +0 -313
- package/libx/_runtime/common/composition/index.js +0 -22
- package/libx/_runtime/common/composition/insert.js +0 -108
- package/libx/_runtime/common/composition/tree.js +0 -275
- package/libx/_runtime/common/composition/update.js +0 -354
- package/libx/_runtime/common/composition/utils.js +0 -95
- package/libx/_runtime/common/error/constants.js +0 -20
- package/libx/_runtime/common/error/entry.js +0 -36
- package/libx/_runtime/common/error/frontend.js +0 -199
- package/libx/_runtime/common/error/index.js +0 -12
- package/libx/_runtime/common/error/log.js +0 -35
- package/libx/_runtime/common/error/standardError.js +0 -11
- package/libx/_runtime/common/error/utils.js +0 -18
- package/libx/_runtime/common/generic/auth/constants.js +0 -17
- package/libx/_runtime/common/generic/put.js +0 -85
- package/libx/_runtime/common/utils/columns.js +0 -177
- package/libx/_runtime/common/utils/compareJsonOLD.js +0 -280
- package/libx/_runtime/common/utils/cqn2cqn4sql.js +0 -1039
- package/libx/_runtime/common/utils/data.js +0 -16
- package/libx/_runtime/common/utils/dollar.js +0 -27
- package/libx/_runtime/common/utils/generateOnCond.js +0 -127
- package/libx/_runtime/common/utils/onlyKeysRemain.js +0 -10
- package/libx/_runtime/common/utils/path.js +0 -20
- package/libx/_runtime/common/utils/quotingStyles.js +0 -29
- package/libx/_runtime/common/utils/restrictions.js +0 -67
- package/libx/_runtime/common/utils/search2cqn4sql.js +0 -37
- package/libx/_runtime/common/utils/searchToLike.js +0 -56
- package/libx/_runtime/common/utils/stream.js +0 -103
- package/libx/_runtime/common/utils/ucsn.js +0 -119
- package/libx/_runtime/common/utils/union.js +0 -31
- package/libx/_runtime/common/utils/unionCqnTemplate.js +0 -174
- package/libx/_runtime/db/Service.js +0 -93
- package/libx/_runtime/db/data-conversion/post-processing.js +0 -175
- package/libx/_runtime/db/expand/expand-v2.js +0 -147
- package/libx/_runtime/db/expand/expandCQNToJoin.js +0 -1775
- package/libx/_runtime/db/expand/index.js +0 -13
- package/libx/_runtime/db/expand/rawToExpanded.js +0 -250
- package/libx/_runtime/db/generic/create.js +0 -30
- package/libx/_runtime/db/generic/delete.js +0 -18
- package/libx/_runtime/db/generic/index.js +0 -25
- package/libx/_runtime/db/generic/input.js +0 -227
- package/libx/_runtime/db/generic/read.js +0 -16
- package/libx/_runtime/db/generic/rewrite.js +0 -68
- package/libx/_runtime/db/generic/structured.js +0 -92
- package/libx/_runtime/db/generic/update.js +0 -97
- package/libx/_runtime/db/generic/virtual.js +0 -83
- package/libx/_runtime/db/query/delete.js +0 -39
- package/libx/_runtime/db/query/index.js +0 -13
- package/libx/_runtime/db/query/insert.js +0 -21
- package/libx/_runtime/db/query/read.js +0 -97
- package/libx/_runtime/db/query/run.js +0 -30
- package/libx/_runtime/db/query/update.js +0 -94
- package/libx/_runtime/db/result/InsertResult.js +0 -87
- package/libx/_runtime/db/sql-builder/BaseBuilder.js +0 -65
- package/libx/_runtime/db/sql-builder/CreateBuilder.js +0 -212
- package/libx/_runtime/db/sql-builder/DeleteBuilder.js +0 -87
- package/libx/_runtime/db/sql-builder/DropBuilder.js +0 -63
- package/libx/_runtime/db/sql-builder/ExpressionBuilder.js +0 -345
- package/libx/_runtime/db/sql-builder/FunctionBuilder.js +0 -232
- package/libx/_runtime/db/sql-builder/InsertBuilder.js +0 -494
- package/libx/_runtime/db/sql-builder/ReferenceBuilder.js +0 -135
- package/libx/_runtime/db/sql-builder/SelectBuilder.js +0 -482
- package/libx/_runtime/db/sql-builder/UpdateBuilder.js +0 -207
- package/libx/_runtime/db/sql-builder/UpsertBuilder.js +0 -25
- package/libx/_runtime/db/sql-builder/annotations.js +0 -50
- package/libx/_runtime/db/sql-builder/arrayed.js +0 -4
- package/libx/_runtime/db/sql-builder/dataTypes.js +0 -59
- package/libx/_runtime/db/sql-builder/dollar.js +0 -37
- package/libx/_runtime/db/sql-builder/index.js +0 -28
- package/libx/_runtime/db/sql-builder/sqlFactory.js +0 -104
- package/libx/_runtime/db/utils/coloredTxCommands.js +0 -7
- package/libx/_runtime/db/utils/columns.js +0 -41
- package/libx/_runtime/db/utils/deep.js +0 -71
- package/libx/_runtime/db/utils/generateAliases.js +0 -160
- package/libx/_runtime/db/utils/localized.js +0 -77
- package/libx/_runtime/db/utils/normalizeTimeData.js +0 -98
- package/libx/_runtime/db/utils/stream.js +0 -41
- package/libx/_runtime/hana/Service.js +0 -173
- package/libx/_runtime/hana/conversion.js +0 -73
- package/libx/_runtime/hana/customBuilder/CustomCreateBuilder.js +0 -11
- package/libx/_runtime/hana/customBuilder/CustomDeleteBuilder.js +0 -17
- package/libx/_runtime/hana/customBuilder/CustomDropBuilder.js +0 -12
- package/libx/_runtime/hana/customBuilder/CustomExpressionBuilder.js +0 -23
- package/libx/_runtime/hana/customBuilder/CustomFunctionBuilder.js +0 -34
- package/libx/_runtime/hana/customBuilder/CustomReferenceBuilder.js +0 -38
- package/libx/_runtime/hana/customBuilder/CustomSelectBuilder.js +0 -90
- package/libx/_runtime/hana/customBuilder/index.js +0 -11
- package/libx/_runtime/hana/driver.js +0 -205
- package/libx/_runtime/hana/dynatrace.js +0 -130
- package/libx/_runtime/hana/execute.js +0 -429
- package/libx/_runtime/hana/localized.js +0 -39
- package/libx/_runtime/hana/pool.js +0 -186
- package/libx/_runtime/hana/search.js +0 -20
- package/libx/_runtime/hana/search2Contains.js +0 -106
- package/libx/_runtime/hana/search2cqn4sql.js +0 -98
- package/libx/_runtime/hana/streaming.js +0 -248
- package/libx/_runtime/messaging/Outbox.js +0 -15
- package/libx/_runtime/sqlite/Service.js +0 -153
- package/libx/_runtime/sqlite/conversion.js +0 -47
- package/libx/_runtime/sqlite/convertAssocToOneManaged.js +0 -60
- package/libx/_runtime/sqlite/convertDraftAdminPathExpression.js +0 -74
- package/libx/_runtime/sqlite/customBuilder/CustomExpressionBuilder.js +0 -24
- package/libx/_runtime/sqlite/customBuilder/CustomFunctionBuilder.js +0 -102
- package/libx/_runtime/sqlite/customBuilder/CustomSelectBuilder.js +0 -16
- package/libx/_runtime/sqlite/customBuilder/CustomUpsertBuilder.js +0 -47
- package/libx/_runtime/sqlite/customBuilder/index.js +0 -49
- package/libx/_runtime/sqlite/execute.js +0 -345
- package/libx/_runtime/sqlite/localized.js +0 -49
- package/libx/outbox/index.js +0 -307
|
@@ -1,1156 +0,0 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
|
|
3
|
-
const UriSyntaxError = require('../errors/UriSyntaxError')
|
|
4
|
-
|
|
5
|
-
const IDENTIFIER = '([_\\p{L}\\p{Nl}][_\\p{L}\\p{Nl}\\p{Nd}\\p{Mn}\\p{Mc}\\p{Pc}\\p{Cf}]{0,127})'
|
|
6
|
-
const IDENTIFIER_REGEXP = new RegExp('^' + IDENTIFIER, 'u')
|
|
7
|
-
const QUALIFIED_NAME_REGEXP = new RegExp('^' + IDENTIFIER + '(\\.' + IDENTIFIER + ')+', 'u')
|
|
8
|
-
const PARAMETER_ALIAS_NAME_REGEXP = new RegExp('^@' + IDENTIFIER, 'u')
|
|
9
|
-
|
|
10
|
-
const BOOLEAN_VALUE_REGEXP = new RegExp('^(?:true|false)', 'i')
|
|
11
|
-
|
|
12
|
-
const STRING_REGEXP = new RegExp("^'(?:''|[^'])*'")
|
|
13
|
-
|
|
14
|
-
const HEX_DIGIT = '[A-Fa-f0-9]'
|
|
15
|
-
const GUID_VALUE_REGEXP = new RegExp(
|
|
16
|
-
'^(?:' + HEX_DIGIT + '{8}-' + HEX_DIGIT + '{4}-' + HEX_DIGIT + '{4}-' + HEX_DIGIT + '{4}-' + HEX_DIGIT + '{12})'
|
|
17
|
-
)
|
|
18
|
-
|
|
19
|
-
// regex for url-safe base64
|
|
20
|
-
const BINARY_VALUE_REGEXP = /^[Bb][Ii][Nn][Aa][Rr][Yy]'(?:[A-Za-z0-9-_]{4})*(?:[A-Za-z0-9-_]{4}|[A-Za-z0-9-_]{3}=|[A-Za-z0-9-_]{2}={2}|[A-Za-z0-9-_]{2,3})'/
|
|
21
|
-
|
|
22
|
-
const UNSIGNED_INTEGER_VALUE_REGEXP = new RegExp('^\\d+')
|
|
23
|
-
const INTEGER_VALUE_REGEXP = new RegExp('^[-+]?\\d+')
|
|
24
|
-
const DECIMAL_VALUE_REGEXP = new RegExp('^[-+]?\\d+\\.\\d+')
|
|
25
|
-
const DOUBLE_VALUE_REGEXP = new RegExp('^(?:(?:[-+]?\\d+(?:\\.\\d+)?[Ee][-+]?\\d+)|NaN|-?INF)')
|
|
26
|
-
|
|
27
|
-
const DURATION_REGEXP = new RegExp("^duration'[-+]?P(?:\\d+D)?(?:T(?:\\d+H)?(?:\\d+M)?(?:\\d+(?:\\.\\d+)?S)?)?'", 'i')
|
|
28
|
-
|
|
29
|
-
const YEAR = '-?(?:0\\d{3}|[1-9]\\d{3,})'
|
|
30
|
-
const MONTH = '(?:0[1-9]|1[012])'
|
|
31
|
-
const DAY = '(?:0[1-9]|[12]\\d|3[01])'
|
|
32
|
-
const HOUR = '(?:[01]\\d|2[0123])'
|
|
33
|
-
const MINUTE = '[012345]\\d'
|
|
34
|
-
const SECOND = '[012345]\\d'
|
|
35
|
-
const DATE = YEAR + '-' + MONTH + '-' + DAY
|
|
36
|
-
const TIME = HOUR + ':' + MINUTE + '(?::' + SECOND + '(?:\\.\\d{1,12})?)?'
|
|
37
|
-
const DATE_REGEXP = new RegExp('^' + DATE)
|
|
38
|
-
const TIME_OF_DAY_REGEXP = new RegExp('^' + TIME)
|
|
39
|
-
const DATE_TIME_OFFSET_REGEXP = new RegExp('^' + DATE + 'T' + TIME + '(?:Z|[-+]' + HOUR + ':' + MINUTE + ')', 'i')
|
|
40
|
-
|
|
41
|
-
const SRID = 'SRID=(\\d{1,8});'
|
|
42
|
-
const NUMBER = '[-+]?\\d+(?:\\.\\d+)?(?:[Ee][-+]?\\d+)?'
|
|
43
|
-
// A geo position is given by two space-separated numbers, like "1.23 4.56E-1".
|
|
44
|
-
const POSITION = '(?:' + NUMBER + ' ' + NUMBER + ')'
|
|
45
|
-
// A geo line is a comma-separated list of positions, like "1 2,3 4,5 6".
|
|
46
|
-
const LINE = '(?:' + POSITION + '?(?:,' + POSITION + ')*)'
|
|
47
|
-
// A geo multiposition is a comma-separated list of positions, each in parentheses, like "(1 2),(3 4),(5 6)".
|
|
48
|
-
const MULTI_POSITION = '(?:(?:\\(' + POSITION + '\\))?(?:,\\(' + POSITION + '\\))*)'
|
|
49
|
-
// A geo multiline is a comma-separated list of lines, each in parentheses, like "(1 1,2 2),(3 3,4 4)".
|
|
50
|
-
// A geo polygon has exactly the same coordinate representation as a geo multiline.
|
|
51
|
-
const MULTI_LINE = '(?:(?:\\(' + LINE + '\\))?(?:,\\(' + LINE + '\\))*)'
|
|
52
|
-
// A geo multipolygon is a comma-separated list of multilines, each in parentheses, like
|
|
53
|
-
// "((-1 -2,1 -2,1 2,-1 2,-1 -2),(-5 -10,-5 10,5 10,5 -10,-5 -10)),((-1 -2,-3 -4,-5 -6,-1 -2))".
|
|
54
|
-
const MULTI_POLYGON = '(?:(?:\\(' + MULTI_LINE + '\\))?(?:,\\(' + MULTI_LINE + '\\))*)'
|
|
55
|
-
// A geo literal is one of position, line, multiposition, multiline, multipolygon,
|
|
56
|
-
// enclosed in parentheses and prefixed with a type name.
|
|
57
|
-
const GEO_LITERAL =
|
|
58
|
-
'(?:(?:Point\\(' +
|
|
59
|
-
POSITION +
|
|
60
|
-
'\\))' +
|
|
61
|
-
'|(?:LineString\\(' +
|
|
62
|
-
LINE +
|
|
63
|
-
'\\))' +
|
|
64
|
-
'|(?:Polygon\\(' +
|
|
65
|
-
MULTI_LINE +
|
|
66
|
-
'\\))' +
|
|
67
|
-
'|(?:MultiPoint\\(' +
|
|
68
|
-
MULTI_POSITION +
|
|
69
|
-
'\\))' +
|
|
70
|
-
'|(?:MultiLineString\\(' +
|
|
71
|
-
MULTI_LINE +
|
|
72
|
-
'\\))' +
|
|
73
|
-
'|(?:MultiPolygon\\(' +
|
|
74
|
-
MULTI_POLYGON +
|
|
75
|
-
'\\)))'
|
|
76
|
-
// A multigeoliteral (used for a collection) is a comma-separated list of geo literals.
|
|
77
|
-
const MULTI_GEO_LITERAL = '(?:' + GEO_LITERAL + '?(?:,' + GEO_LITERAL + ')*)'
|
|
78
|
-
// The validation regular expressions for geo literals must be all case-insensitive.
|
|
79
|
-
// They are built as sequence of an SRID definition, a type name, and the coordinates;
|
|
80
|
-
// the coordinates are enclosed in parentheses.
|
|
81
|
-
const GEO_POINT_REGEXP = new RegExp('^' + SRID + 'Point\\(' + POSITION + '\\)', 'i')
|
|
82
|
-
const GEO_LINE_STRING_REGEXP = new RegExp('^' + SRID + 'LineString\\(' + LINE + '\\)', 'i')
|
|
83
|
-
const GEO_POLYGON_REGEXP = new RegExp('^' + SRID + 'Polygon\\(' + MULTI_LINE + '\\)', 'i')
|
|
84
|
-
const GEO_MULTI_POINT_REGEXP = new RegExp('^' + SRID + 'MultiPoint\\(' + MULTI_POSITION + '\\)', 'i')
|
|
85
|
-
const GEO_MULTI_LINE_STRING_REGEXP = new RegExp('^' + SRID + 'MultiLineString\\(' + MULTI_LINE + '\\)', 'i')
|
|
86
|
-
const GEO_MULTI_POLYGON_REGEXP = new RegExp('^' + SRID + 'MultiPolygon\\(' + MULTI_POLYGON + '\\)', 'i')
|
|
87
|
-
const GEO_COLLECTION_REGEXP = new RegExp('^' + SRID + 'Collection\\(' + MULTI_GEO_LITERAL + '\\)', 'i')
|
|
88
|
-
|
|
89
|
-
const JSON_STRING_REGEXP = new RegExp('^"(?:(?:\\\\(?:[btnfr"/\\\\]|u' + HEX_DIGIT + '{4}))|[^\\\\"])*"')
|
|
90
|
-
|
|
91
|
-
// A search word is a sequence of one or more non-whitespace characters, excluding
|
|
92
|
-
// parentheses, double-quotes, and semicolons. It must not start with a single quote.
|
|
93
|
-
const WORD_REGEXP = new RegExp('^[^\\s()";\'][^\\s()";]*', 'u')
|
|
94
|
-
// A search phrase is a doublequoted string with backslash-escaped backslashes and doublequotes.
|
|
95
|
-
const PHRASE_REGEXP = new RegExp('^"(?:[^\\\\"]|\\\\[\\\\"])*"')
|
|
96
|
-
|
|
97
|
-
/**
|
|
98
|
-
* <p>Simple OData URI tokenizer that works on a given string by keeping an index.</p>
|
|
99
|
-
* <p>As far as feasible, it tries to work on regular-expression basis,
|
|
100
|
-
* assuming this to be faster than character operations.
|
|
101
|
-
* Since only the index is 'moved', backing out while parsing a token is easy and used throughout.
|
|
102
|
-
* There is intentionally no method to push back tokens
|
|
103
|
-
* (although it would be easy to add such a method)
|
|
104
|
-
* because this tokenizer should behave like a classical token-consuming tokenizer.
|
|
105
|
-
* There is, however, the possibility to save the current state and return to it later.</p>
|
|
106
|
-
* <p>Whitespace is not an extra token but consumed with the tokens that require whitespace.
|
|
107
|
-
* Optional whitespace is not supported.</p>
|
|
108
|
-
*/
|
|
109
|
-
class UriTokenizer {
|
|
110
|
-
/**
|
|
111
|
-
* Constructor which accepts the URI string.
|
|
112
|
-
* @param {string} parseString the URI string
|
|
113
|
-
*/
|
|
114
|
-
constructor (parseString) {
|
|
115
|
-
this._index = 0
|
|
116
|
-
this._parseString = parseString || ''
|
|
117
|
-
this._startIndex = 0
|
|
118
|
-
this._savedStartIndex = null
|
|
119
|
-
this._savedIndex = null
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
/**
|
|
123
|
-
* Save the current state.
|
|
124
|
-
*
|
|
125
|
-
* @see #returnToSavedState()
|
|
126
|
-
*/
|
|
127
|
-
saveState () {
|
|
128
|
-
this._savedStartIndex = this._startIndex
|
|
129
|
-
this._savedIndex = this._index
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
/**
|
|
133
|
-
* Return to the previously saved state.
|
|
134
|
-
*
|
|
135
|
-
* @see #saveState()
|
|
136
|
-
*/
|
|
137
|
-
returnToSavedState () {
|
|
138
|
-
this._startIndex = this._savedStartIndex
|
|
139
|
-
this._index = this._savedIndex
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
/**
|
|
143
|
-
* Return the whole parse string.
|
|
144
|
-
* @returns {string} the parse string
|
|
145
|
-
*/
|
|
146
|
-
getParseString () {
|
|
147
|
-
return this._parseString
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
/**
|
|
151
|
-
* Return the current position in the parse string.
|
|
152
|
-
* @returns {number} position, starting at 1
|
|
153
|
-
*/
|
|
154
|
-
getPosition () {
|
|
155
|
-
return this._index + 1
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
/**
|
|
159
|
-
* Return the string value corresponding to the last successful {@link #next(TokenKind)} call.
|
|
160
|
-
* @returns {string} the token text
|
|
161
|
-
*/
|
|
162
|
-
getText () {
|
|
163
|
-
return this._parseString.substring(this._startIndex, this._index)
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
/**
|
|
167
|
-
* Try to find a token of the given token kind at the current index.
|
|
168
|
-
* The order in which this method is called with different token kinds is important,
|
|
169
|
-
* not only for performance reasons but also if tokens can start with the same characters
|
|
170
|
-
* (e.g., a qualified name starts with an OData identifier).
|
|
171
|
-
* The index is advanced to the end of this token if the token is found.
|
|
172
|
-
*
|
|
173
|
-
* @param {UriTokenizer.TokenKind} allowedTokenKind the kind of token to expect
|
|
174
|
-
* @returns {boolean} <code>true</code> if the token is found; <code>false</code> otherwise
|
|
175
|
-
* @see #getText()
|
|
176
|
-
*/
|
|
177
|
-
next (allowedTokenKind) {
|
|
178
|
-
if (!allowedTokenKind) {
|
|
179
|
-
return false
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
const previousIndex = this._index
|
|
183
|
-
|
|
184
|
-
let found = false
|
|
185
|
-
switch (allowedTokenKind) {
|
|
186
|
-
case UriTokenizer.TokenKind.EOF:
|
|
187
|
-
found = this._nextEOF()
|
|
188
|
-
break
|
|
189
|
-
|
|
190
|
-
// Constants
|
|
191
|
-
case UriTokenizer.TokenKind.REF:
|
|
192
|
-
found = this._nextConstant('$ref')
|
|
193
|
-
break
|
|
194
|
-
case UriTokenizer.TokenKind.VALUE:
|
|
195
|
-
found = this._nextConstant('$value')
|
|
196
|
-
break
|
|
197
|
-
case UriTokenizer.TokenKind.COUNT:
|
|
198
|
-
found = this._nextConstant('$count')
|
|
199
|
-
break
|
|
200
|
-
case UriTokenizer.TokenKind.METADATA:
|
|
201
|
-
found = this._nextConstant('$metadata')
|
|
202
|
-
break
|
|
203
|
-
case UriTokenizer.TokenKind.BATCH:
|
|
204
|
-
found = this._nextConstant('$batch')
|
|
205
|
-
break
|
|
206
|
-
case UriTokenizer.TokenKind.CROSSJOIN:
|
|
207
|
-
found = this._nextConstant('$crossjoin')
|
|
208
|
-
break
|
|
209
|
-
case UriTokenizer.TokenKind.ALL:
|
|
210
|
-
found = this._nextConstant('$all')
|
|
211
|
-
break
|
|
212
|
-
case UriTokenizer.TokenKind.ENTITY:
|
|
213
|
-
found = this._nextConstant('$entity')
|
|
214
|
-
break
|
|
215
|
-
case UriTokenizer.TokenKind.ROOT:
|
|
216
|
-
found = this._nextConstant('$root')
|
|
217
|
-
break
|
|
218
|
-
case UriTokenizer.TokenKind.IT:
|
|
219
|
-
found = this._nextConstant('$it')
|
|
220
|
-
break
|
|
221
|
-
|
|
222
|
-
case UriTokenizer.TokenKind.APPLY:
|
|
223
|
-
found = this._nextConstant('$apply')
|
|
224
|
-
break
|
|
225
|
-
case UriTokenizer.TokenKind.EXPAND:
|
|
226
|
-
found = this._nextConstant('$expand')
|
|
227
|
-
break
|
|
228
|
-
case UriTokenizer.TokenKind.FILTER:
|
|
229
|
-
found = this._nextConstant('$filter')
|
|
230
|
-
break
|
|
231
|
-
case UriTokenizer.TokenKind.LEVELS:
|
|
232
|
-
found = this._nextConstant('$levels')
|
|
233
|
-
break
|
|
234
|
-
case UriTokenizer.TokenKind.ORDERBY:
|
|
235
|
-
found = this._nextConstant('$orderby')
|
|
236
|
-
break
|
|
237
|
-
case UriTokenizer.TokenKind.SEARCH:
|
|
238
|
-
found = this._nextConstant('$search')
|
|
239
|
-
break
|
|
240
|
-
case UriTokenizer.TokenKind.SELECT:
|
|
241
|
-
found = this._nextConstant('$select')
|
|
242
|
-
break
|
|
243
|
-
case UriTokenizer.TokenKind.SKIP:
|
|
244
|
-
found = this._nextConstant('$skip')
|
|
245
|
-
break
|
|
246
|
-
case UriTokenizer.TokenKind.TOP:
|
|
247
|
-
found = this._nextConstant('$top')
|
|
248
|
-
break
|
|
249
|
-
|
|
250
|
-
case UriTokenizer.TokenKind.LAMBDA_ANY:
|
|
251
|
-
found = this._nextConstant('any')
|
|
252
|
-
break
|
|
253
|
-
case UriTokenizer.TokenKind.LAMBDA_ALL:
|
|
254
|
-
found = this._nextConstant('all')
|
|
255
|
-
break
|
|
256
|
-
|
|
257
|
-
case UriTokenizer.TokenKind.OPEN:
|
|
258
|
-
found = this._nextCharacter('(')
|
|
259
|
-
break
|
|
260
|
-
case UriTokenizer.TokenKind.CLOSE:
|
|
261
|
-
found = this._nextCharacter(')')
|
|
262
|
-
break
|
|
263
|
-
case UriTokenizer.TokenKind.COMMA:
|
|
264
|
-
found = this._nextCharacter(',')
|
|
265
|
-
break
|
|
266
|
-
case UriTokenizer.TokenKind.SEMI:
|
|
267
|
-
found = this._nextCharacter(';')
|
|
268
|
-
break
|
|
269
|
-
case UriTokenizer.TokenKind.COLON:
|
|
270
|
-
found = this._nextCharacter(':')
|
|
271
|
-
break
|
|
272
|
-
case UriTokenizer.TokenKind.DOT:
|
|
273
|
-
found = this._nextCharacter('.')
|
|
274
|
-
break
|
|
275
|
-
case UriTokenizer.TokenKind.SLASH:
|
|
276
|
-
found = this._nextCharacter('/')
|
|
277
|
-
break
|
|
278
|
-
case UriTokenizer.TokenKind.EQ:
|
|
279
|
-
found = this._nextCharacter('=')
|
|
280
|
-
break
|
|
281
|
-
case UriTokenizer.TokenKind.STAR:
|
|
282
|
-
found = this._nextCharacter('*')
|
|
283
|
-
break
|
|
284
|
-
case UriTokenizer.TokenKind.PLUS:
|
|
285
|
-
found = this._nextCharacter('+')
|
|
286
|
-
break
|
|
287
|
-
|
|
288
|
-
case UriTokenizer.TokenKind.NULL:
|
|
289
|
-
found = this._nextConstant('null')
|
|
290
|
-
break
|
|
291
|
-
case UriTokenizer.TokenKind.MAX:
|
|
292
|
-
found = this._nextConstant('max')
|
|
293
|
-
break
|
|
294
|
-
|
|
295
|
-
case UriTokenizer.TokenKind.AVERAGE:
|
|
296
|
-
found = this._nextConstant('average')
|
|
297
|
-
break
|
|
298
|
-
case UriTokenizer.TokenKind.COUNTDISTINCT:
|
|
299
|
-
found = this._nextConstant('countdistinct')
|
|
300
|
-
break
|
|
301
|
-
case UriTokenizer.TokenKind.IDENTITY:
|
|
302
|
-
found = this._nextConstant('identity')
|
|
303
|
-
break
|
|
304
|
-
case UriTokenizer.TokenKind.MIN:
|
|
305
|
-
found = this._nextConstant('min')
|
|
306
|
-
break
|
|
307
|
-
case UriTokenizer.TokenKind.SUM:
|
|
308
|
-
found = this._nextConstant('sum')
|
|
309
|
-
break
|
|
310
|
-
|
|
311
|
-
// Identifiers
|
|
312
|
-
case UriTokenizer.TokenKind.ODataIdentifier:
|
|
313
|
-
found = this._nextWithRegularExpression(IDENTIFIER_REGEXP)
|
|
314
|
-
break
|
|
315
|
-
case UriTokenizer.TokenKind.QualifiedName:
|
|
316
|
-
found = this._nextWithRegularExpression(QUALIFIED_NAME_REGEXP)
|
|
317
|
-
break
|
|
318
|
-
case UriTokenizer.TokenKind.ParameterAliasName:
|
|
319
|
-
found = this._nextWithRegularExpression(PARAMETER_ALIAS_NAME_REGEXP)
|
|
320
|
-
break
|
|
321
|
-
|
|
322
|
-
// Primitive Values
|
|
323
|
-
case UriTokenizer.TokenKind.BooleanValue:
|
|
324
|
-
found = this._nextWithRegularExpression(BOOLEAN_VALUE_REGEXP)
|
|
325
|
-
break
|
|
326
|
-
case UriTokenizer.TokenKind.StringValue:
|
|
327
|
-
found = this._nextWithRegularExpression(STRING_REGEXP)
|
|
328
|
-
break
|
|
329
|
-
case UriTokenizer.TokenKind.IntegerValue:
|
|
330
|
-
found = this._nextIntegerValue()
|
|
331
|
-
break
|
|
332
|
-
case UriTokenizer.TokenKind.UnsignedIntegerValue:
|
|
333
|
-
found = this._nextWithRegularExpression(UNSIGNED_INTEGER_VALUE_REGEXP)
|
|
334
|
-
break
|
|
335
|
-
case UriTokenizer.TokenKind.GuidValue:
|
|
336
|
-
found = this._nextWithRegularExpression(GUID_VALUE_REGEXP)
|
|
337
|
-
break
|
|
338
|
-
case UriTokenizer.TokenKind.DateValue:
|
|
339
|
-
found = this._nextWithRegularExpression(DATE_REGEXP)
|
|
340
|
-
break
|
|
341
|
-
case UriTokenizer.TokenKind.DateTimeOffsetValue:
|
|
342
|
-
found = this._nextWithRegularExpression(DATE_TIME_OFFSET_REGEXP)
|
|
343
|
-
break
|
|
344
|
-
case UriTokenizer.TokenKind.TimeOfDayValue:
|
|
345
|
-
found = this._nextWithRegularExpression(TIME_OF_DAY_REGEXP)
|
|
346
|
-
break
|
|
347
|
-
case UriTokenizer.TokenKind.DecimalValue:
|
|
348
|
-
found = this._nextDecimalValue()
|
|
349
|
-
break
|
|
350
|
-
case UriTokenizer.TokenKind.DoubleValue:
|
|
351
|
-
found = this._nextDoubleValue()
|
|
352
|
-
break
|
|
353
|
-
case UriTokenizer.TokenKind.DurationValue:
|
|
354
|
-
found = this._nextWithRegularExpression(DURATION_REGEXP)
|
|
355
|
-
break
|
|
356
|
-
case UriTokenizer.TokenKind.BinaryValue:
|
|
357
|
-
found = this._nextWithRegularExpression(BINARY_VALUE_REGEXP)
|
|
358
|
-
break
|
|
359
|
-
case UriTokenizer.TokenKind.EnumValue:
|
|
360
|
-
found = this._nextEnumValue()
|
|
361
|
-
break
|
|
362
|
-
|
|
363
|
-
// Geo Values
|
|
364
|
-
case UriTokenizer.TokenKind.GeographyPoint:
|
|
365
|
-
found = this._nextGeoValue(true, GEO_POINT_REGEXP)
|
|
366
|
-
break
|
|
367
|
-
case UriTokenizer.TokenKind.GeometryPoint:
|
|
368
|
-
found = this._nextGeoValue(false, GEO_POINT_REGEXP)
|
|
369
|
-
break
|
|
370
|
-
case UriTokenizer.TokenKind.GeographyLineString:
|
|
371
|
-
found = this._nextGeoValue(true, GEO_LINE_STRING_REGEXP)
|
|
372
|
-
break
|
|
373
|
-
case UriTokenizer.TokenKind.GeometryLineString:
|
|
374
|
-
found = this._nextGeoValue(false, GEO_LINE_STRING_REGEXP)
|
|
375
|
-
break
|
|
376
|
-
case UriTokenizer.TokenKind.GeographyPolygon:
|
|
377
|
-
found = this._nextGeoValue(true, GEO_POLYGON_REGEXP)
|
|
378
|
-
break
|
|
379
|
-
case UriTokenizer.TokenKind.GeometryPolygon:
|
|
380
|
-
found = this._nextGeoValue(false, GEO_POLYGON_REGEXP)
|
|
381
|
-
break
|
|
382
|
-
case UriTokenizer.TokenKind.GeographyMultiPoint:
|
|
383
|
-
found = this._nextGeoValue(true, GEO_MULTI_POINT_REGEXP)
|
|
384
|
-
break
|
|
385
|
-
case UriTokenizer.TokenKind.GeometryMultiPoint:
|
|
386
|
-
found = this._nextGeoValue(false, GEO_MULTI_POINT_REGEXP)
|
|
387
|
-
break
|
|
388
|
-
case UriTokenizer.TokenKind.GeographyMultiLineString:
|
|
389
|
-
found = this._nextGeoValue(true, GEO_MULTI_LINE_STRING_REGEXP)
|
|
390
|
-
break
|
|
391
|
-
case UriTokenizer.TokenKind.GeometryMultiLineString:
|
|
392
|
-
found = this._nextGeoValue(false, GEO_MULTI_LINE_STRING_REGEXP)
|
|
393
|
-
break
|
|
394
|
-
case UriTokenizer.TokenKind.GeographyMultiPolygon:
|
|
395
|
-
found = this._nextGeoValue(true, GEO_MULTI_POLYGON_REGEXP)
|
|
396
|
-
break
|
|
397
|
-
case UriTokenizer.TokenKind.GeometryMultiPolygon:
|
|
398
|
-
found = this._nextGeoValue(false, GEO_MULTI_POLYGON_REGEXP)
|
|
399
|
-
break
|
|
400
|
-
case UriTokenizer.TokenKind.GeographyCollection:
|
|
401
|
-
found = this._nextGeoValue(true, GEO_COLLECTION_REGEXP)
|
|
402
|
-
break
|
|
403
|
-
case UriTokenizer.TokenKind.GeometryCollection:
|
|
404
|
-
found = this._nextGeoValue(false, GEO_COLLECTION_REGEXP)
|
|
405
|
-
break
|
|
406
|
-
|
|
407
|
-
// Complex or Collection Value
|
|
408
|
-
case UriTokenizer.TokenKind.jsonArrayOrObject:
|
|
409
|
-
found = this._nextJsonArrayOrObject()
|
|
410
|
-
break
|
|
411
|
-
|
|
412
|
-
// Search
|
|
413
|
-
case UriTokenizer.TokenKind.Word:
|
|
414
|
-
found = this._nextWord()
|
|
415
|
-
break
|
|
416
|
-
case UriTokenizer.TokenKind.Phrase:
|
|
417
|
-
found = this._nextWithRegularExpression(PHRASE_REGEXP)
|
|
418
|
-
break
|
|
419
|
-
|
|
420
|
-
// Operators in Search Expressions
|
|
421
|
-
case UriTokenizer.TokenKind.OrOperatorSearch:
|
|
422
|
-
found = this._nextBinaryOperator('OR')
|
|
423
|
-
break
|
|
424
|
-
case UriTokenizer.TokenKind.AndOperatorSearch:
|
|
425
|
-
found = this._nextAndOperatorSearch()
|
|
426
|
-
break
|
|
427
|
-
case UriTokenizer.TokenKind.NotOperatorSearch:
|
|
428
|
-
found = this._nextUnaryOperator('NOT')
|
|
429
|
-
break
|
|
430
|
-
|
|
431
|
-
// Operators
|
|
432
|
-
case UriTokenizer.TokenKind.OrOperator:
|
|
433
|
-
found = this._nextBinaryOperator('or')
|
|
434
|
-
break
|
|
435
|
-
case UriTokenizer.TokenKind.AndOperator:
|
|
436
|
-
found = this._nextBinaryOperator('and')
|
|
437
|
-
break
|
|
438
|
-
case UriTokenizer.TokenKind.EqualsOperator:
|
|
439
|
-
found = this._nextBinaryOperator('eq')
|
|
440
|
-
break
|
|
441
|
-
case UriTokenizer.TokenKind.NotEqualsOperator:
|
|
442
|
-
found = this._nextBinaryOperator('ne')
|
|
443
|
-
break
|
|
444
|
-
case UriTokenizer.TokenKind.GreaterThanOperator:
|
|
445
|
-
found = this._nextBinaryOperator('gt')
|
|
446
|
-
break
|
|
447
|
-
case UriTokenizer.TokenKind.GreaterThanOrEqualsOperator:
|
|
448
|
-
found = this._nextBinaryOperator('ge')
|
|
449
|
-
break
|
|
450
|
-
case UriTokenizer.TokenKind.LessThanOperator:
|
|
451
|
-
found = this._nextBinaryOperator('lt')
|
|
452
|
-
break
|
|
453
|
-
case UriTokenizer.TokenKind.LessThanOrEqualsOperator:
|
|
454
|
-
found = this._nextBinaryOperator('le')
|
|
455
|
-
break
|
|
456
|
-
case UriTokenizer.TokenKind.HasOperator:
|
|
457
|
-
found = this._nextBinaryOperator('has')
|
|
458
|
-
break
|
|
459
|
-
case UriTokenizer.TokenKind.AddOperator:
|
|
460
|
-
found = this._nextBinaryOperator('add')
|
|
461
|
-
break
|
|
462
|
-
case UriTokenizer.TokenKind.SubOperator:
|
|
463
|
-
found = this._nextBinaryOperator('sub')
|
|
464
|
-
break
|
|
465
|
-
case UriTokenizer.TokenKind.MulOperator:
|
|
466
|
-
found = this._nextBinaryOperator('mul')
|
|
467
|
-
break
|
|
468
|
-
case UriTokenizer.TokenKind.DivOperator:
|
|
469
|
-
found = this._nextBinaryOperator('div')
|
|
470
|
-
break
|
|
471
|
-
case UriTokenizer.TokenKind.ModOperator:
|
|
472
|
-
found = this._nextBinaryOperator('mod')
|
|
473
|
-
break
|
|
474
|
-
case UriTokenizer.TokenKind.MinusOperator:
|
|
475
|
-
found = this._nextMinusOperator()
|
|
476
|
-
break
|
|
477
|
-
case UriTokenizer.TokenKind.NotOperator:
|
|
478
|
-
found = this._nextUnaryOperator('not')
|
|
479
|
-
break
|
|
480
|
-
|
|
481
|
-
// Operators for the aggregation extension
|
|
482
|
-
case UriTokenizer.TokenKind.AsOperator:
|
|
483
|
-
found = this._nextBinaryOperator('as')
|
|
484
|
-
break
|
|
485
|
-
case UriTokenizer.TokenKind.FromOperator:
|
|
486
|
-
found = this._nextBinaryOperator('from')
|
|
487
|
-
break
|
|
488
|
-
case UriTokenizer.TokenKind.WithOperator:
|
|
489
|
-
found = this._nextBinaryOperator('with')
|
|
490
|
-
break
|
|
491
|
-
|
|
492
|
-
// Methods
|
|
493
|
-
case UriTokenizer.TokenKind.CastMethod:
|
|
494
|
-
found = this._nextMethod('cast')
|
|
495
|
-
break
|
|
496
|
-
case UriTokenizer.TokenKind.CeilingMethod:
|
|
497
|
-
found = this._nextMethod('ceiling')
|
|
498
|
-
break
|
|
499
|
-
case UriTokenizer.TokenKind.ConcatMethod:
|
|
500
|
-
found = this._nextMethod('concat')
|
|
501
|
-
break
|
|
502
|
-
case UriTokenizer.TokenKind.ContainsMethod:
|
|
503
|
-
found = this._nextMethod('contains')
|
|
504
|
-
break
|
|
505
|
-
case UriTokenizer.TokenKind.DateMethod:
|
|
506
|
-
found = this._nextMethod('date')
|
|
507
|
-
break
|
|
508
|
-
case UriTokenizer.TokenKind.DayMethod:
|
|
509
|
-
found = this._nextMethod('day')
|
|
510
|
-
break
|
|
511
|
-
case UriTokenizer.TokenKind.EndswithMethod:
|
|
512
|
-
found = this._nextMethod('endswith')
|
|
513
|
-
break
|
|
514
|
-
case UriTokenizer.TokenKind.FloorMethod:
|
|
515
|
-
found = this._nextMethod('floor')
|
|
516
|
-
break
|
|
517
|
-
case UriTokenizer.TokenKind.FractionalsecondsMethod:
|
|
518
|
-
found = this._nextMethod('fractionalseconds')
|
|
519
|
-
break
|
|
520
|
-
case UriTokenizer.TokenKind.GeoDistanceMethod:
|
|
521
|
-
found = this._nextMethod('geo.distance')
|
|
522
|
-
break
|
|
523
|
-
case UriTokenizer.TokenKind.GeoIntersectsMethod:
|
|
524
|
-
found = this._nextMethod('geo.intersects')
|
|
525
|
-
break
|
|
526
|
-
case UriTokenizer.TokenKind.GeoLengthMethod:
|
|
527
|
-
found = this._nextMethod('geo.length')
|
|
528
|
-
break
|
|
529
|
-
case UriTokenizer.TokenKind.HourMethod:
|
|
530
|
-
found = this._nextMethod('hour')
|
|
531
|
-
break
|
|
532
|
-
case UriTokenizer.TokenKind.IndexofMethod:
|
|
533
|
-
found = this._nextMethod('indexof')
|
|
534
|
-
break
|
|
535
|
-
case UriTokenizer.TokenKind.IsofMethod:
|
|
536
|
-
found = this._nextMethod('isof')
|
|
537
|
-
break
|
|
538
|
-
case UriTokenizer.TokenKind.LengthMethod:
|
|
539
|
-
found = this._nextMethod('length')
|
|
540
|
-
break
|
|
541
|
-
case UriTokenizer.TokenKind.MaxdatetimeMethod:
|
|
542
|
-
found = this._nextMethod('maxdatetime')
|
|
543
|
-
break
|
|
544
|
-
case UriTokenizer.TokenKind.MindatetimeMethod:
|
|
545
|
-
found = this._nextMethod('mindatetime')
|
|
546
|
-
break
|
|
547
|
-
case UriTokenizer.TokenKind.MinuteMethod:
|
|
548
|
-
found = this._nextMethod('minute')
|
|
549
|
-
break
|
|
550
|
-
case UriTokenizer.TokenKind.MonthMethod:
|
|
551
|
-
found = this._nextMethod('month')
|
|
552
|
-
break
|
|
553
|
-
case UriTokenizer.TokenKind.NowMethod:
|
|
554
|
-
found = this._nextMethod('now')
|
|
555
|
-
break
|
|
556
|
-
case UriTokenizer.TokenKind.RoundMethod:
|
|
557
|
-
found = this._nextMethod('round')
|
|
558
|
-
break
|
|
559
|
-
case UriTokenizer.TokenKind.SecondMethod:
|
|
560
|
-
found = this._nextMethod('second')
|
|
561
|
-
break
|
|
562
|
-
case UriTokenizer.TokenKind.StartswithMethod:
|
|
563
|
-
found = this._nextMethod('startswith')
|
|
564
|
-
break
|
|
565
|
-
case UriTokenizer.TokenKind.SubstringMethod:
|
|
566
|
-
found = this._nextMethod('substring')
|
|
567
|
-
break
|
|
568
|
-
case UriTokenizer.TokenKind.TimeMethod:
|
|
569
|
-
found = this._nextMethod('time')
|
|
570
|
-
break
|
|
571
|
-
case UriTokenizer.TokenKind.TolowerMethod:
|
|
572
|
-
found = this._nextMethod('tolower')
|
|
573
|
-
break
|
|
574
|
-
case UriTokenizer.TokenKind.TotaloffsetminutesMethod:
|
|
575
|
-
found = this._nextMethod('totaloffsetminutes')
|
|
576
|
-
break
|
|
577
|
-
case UriTokenizer.TokenKind.TotalsecondsMethod:
|
|
578
|
-
found = this._nextMethod('totalseconds')
|
|
579
|
-
break
|
|
580
|
-
case UriTokenizer.TokenKind.ToupperMethod:
|
|
581
|
-
found = this._nextMethod('toupper')
|
|
582
|
-
break
|
|
583
|
-
case UriTokenizer.TokenKind.TrimMethod:
|
|
584
|
-
found = this._nextMethod('trim')
|
|
585
|
-
break
|
|
586
|
-
case UriTokenizer.TokenKind.YearMethod:
|
|
587
|
-
found = this._nextMethod('year')
|
|
588
|
-
break
|
|
589
|
-
|
|
590
|
-
// Method for the aggregation extension
|
|
591
|
-
case UriTokenizer.TokenKind.IsDefinedMethod:
|
|
592
|
-
found = this._nextMethod('isdefined')
|
|
593
|
-
break
|
|
594
|
-
|
|
595
|
-
// Transformations for the aggregation extension
|
|
596
|
-
case UriTokenizer.TokenKind.AggregateTrafo:
|
|
597
|
-
found = this._nextMethod('aggregate')
|
|
598
|
-
break
|
|
599
|
-
case UriTokenizer.TokenKind.BottomCountTrafo:
|
|
600
|
-
found = this._nextMethod('bottomcount')
|
|
601
|
-
break
|
|
602
|
-
case UriTokenizer.TokenKind.BottomPercentTrafo:
|
|
603
|
-
found = this._nextMethod('bottompercent')
|
|
604
|
-
break
|
|
605
|
-
case UriTokenizer.TokenKind.BottomSumTrafo:
|
|
606
|
-
found = this._nextMethod('bottomsum')
|
|
607
|
-
break
|
|
608
|
-
case UriTokenizer.TokenKind.ComputeTrafo:
|
|
609
|
-
found = this._nextMethod('compute')
|
|
610
|
-
break
|
|
611
|
-
case UriTokenizer.TokenKind.ExpandTrafo:
|
|
612
|
-
found = this._nextMethod('expand')
|
|
613
|
-
break
|
|
614
|
-
case UriTokenizer.TokenKind.FilterTrafo:
|
|
615
|
-
found = this._nextMethod('filter')
|
|
616
|
-
break
|
|
617
|
-
case UriTokenizer.TokenKind.GroupByTrafo:
|
|
618
|
-
found = this._nextMethod('groupby')
|
|
619
|
-
break
|
|
620
|
-
case UriTokenizer.TokenKind.OrderByTrafo:
|
|
621
|
-
found = this._nextMethod('orderby')
|
|
622
|
-
break
|
|
623
|
-
case UriTokenizer.TokenKind.SearchTrafo:
|
|
624
|
-
found = this._nextMethod('search')
|
|
625
|
-
break
|
|
626
|
-
case UriTokenizer.TokenKind.SkipTrafo:
|
|
627
|
-
found = this._nextMethod('skip')
|
|
628
|
-
break
|
|
629
|
-
case UriTokenizer.TokenKind.TopTrafo:
|
|
630
|
-
found = this._nextMethod('top')
|
|
631
|
-
break
|
|
632
|
-
case UriTokenizer.TokenKind.TopCountTrafo:
|
|
633
|
-
found = this._nextMethod('topcount')
|
|
634
|
-
break
|
|
635
|
-
case UriTokenizer.TokenKind.TopPercentTrafo:
|
|
636
|
-
found = this._nextMethod('toppercent')
|
|
637
|
-
break
|
|
638
|
-
case UriTokenizer.TokenKind.TopSumTrafo:
|
|
639
|
-
found = this._nextMethod('topsum')
|
|
640
|
-
break
|
|
641
|
-
|
|
642
|
-
// Roll-up specification for the aggregation extension
|
|
643
|
-
case UriTokenizer.TokenKind.RollUpSpec:
|
|
644
|
-
found = this._nextMethod('rollup')
|
|
645
|
-
break
|
|
646
|
-
|
|
647
|
-
// Suffixes
|
|
648
|
-
case UriTokenizer.TokenKind.AscSuffix:
|
|
649
|
-
found = this._nextSuffix('asc')
|
|
650
|
-
break
|
|
651
|
-
case UriTokenizer.TokenKind.DescSuffix:
|
|
652
|
-
found = this._nextSuffix('desc')
|
|
653
|
-
break
|
|
654
|
-
|
|
655
|
-
default:
|
|
656
|
-
}
|
|
657
|
-
|
|
658
|
-
if (found) {
|
|
659
|
-
this._startIndex = previousIndex
|
|
660
|
-
} else {
|
|
661
|
-
this._index = previousIndex
|
|
662
|
-
}
|
|
663
|
-
return found
|
|
664
|
-
}
|
|
665
|
-
|
|
666
|
-
/**
|
|
667
|
-
* Determine whether the index is at the end of the string to be parsed; leave the index unchanged.
|
|
668
|
-
* @returns {boolean} whether the current index is at the end of the string to be parsed
|
|
669
|
-
* @private
|
|
670
|
-
*/
|
|
671
|
-
_nextEOF () {
|
|
672
|
-
return this._index >= this._parseString.length
|
|
673
|
-
}
|
|
674
|
-
|
|
675
|
-
/**
|
|
676
|
-
* Move past the given string constant if found; otherwise leave the index unchanged.
|
|
677
|
-
* @param {string} constant the string constant
|
|
678
|
-
* @returns {boolean} whether the constant has been found at the current index
|
|
679
|
-
* @private
|
|
680
|
-
*/
|
|
681
|
-
_nextConstant (constant, caseInsensitive) {
|
|
682
|
-
if ((caseInsensitive ? this._parseString.toLowerCase() : this._parseString).startsWith(constant, this._index)) {
|
|
683
|
-
this._index += constant.length
|
|
684
|
-
return true
|
|
685
|
-
}
|
|
686
|
-
return false
|
|
687
|
-
}
|
|
688
|
-
|
|
689
|
-
/**
|
|
690
|
-
* Move past the given regular expression, if found; otherwise leave the index unchanged.
|
|
691
|
-
* @param {RegExp} regexp the regular expression
|
|
692
|
-
* @returns {boolean} whether the regular expression has been found at the current index
|
|
693
|
-
* @private
|
|
694
|
-
*/
|
|
695
|
-
_nextWithRegularExpression (regexp) {
|
|
696
|
-
const matched = this._parseString.substring(this._index).match(regexp)
|
|
697
|
-
if (!matched) return false
|
|
698
|
-
this._index += matched[0].length
|
|
699
|
-
return true
|
|
700
|
-
}
|
|
701
|
-
|
|
702
|
-
/**
|
|
703
|
-
* Move past the given character if found; otherwise leave the index unchanged.
|
|
704
|
-
* @param {string} character the character
|
|
705
|
-
* @returns {boolean} whether the given character has been found at the current index
|
|
706
|
-
* @private
|
|
707
|
-
*/
|
|
708
|
-
_nextCharacter (character) {
|
|
709
|
-
if (this._index < this._parseString.length && this._parseString.charAt(this._index) === character) {
|
|
710
|
-
this._index++
|
|
711
|
-
return true
|
|
712
|
-
}
|
|
713
|
-
return false
|
|
714
|
-
}
|
|
715
|
-
|
|
716
|
-
/**
|
|
717
|
-
* Move past a digit character ('0' to '9') if found; otherwise leave the index unchanged.
|
|
718
|
-
* @returns {boolean} whether a digit character has been found at the current index
|
|
719
|
-
* @private
|
|
720
|
-
*/
|
|
721
|
-
_nextDigit () {
|
|
722
|
-
if (this._index < this._parseString.length) {
|
|
723
|
-
const code = this._parseString.charAt(this._index)
|
|
724
|
-
if (code >= '0' && code <= '9') {
|
|
725
|
-
this._index++
|
|
726
|
-
return true
|
|
727
|
-
}
|
|
728
|
-
}
|
|
729
|
-
return false
|
|
730
|
-
}
|
|
731
|
-
|
|
732
|
-
/**
|
|
733
|
-
* Move past whitespace (space or horizontal tabulator) characters if found; otherwise leave the index unchanged.
|
|
734
|
-
* @returns {boolean} whether whitespace characters have been found at the current index
|
|
735
|
-
* @private
|
|
736
|
-
*/
|
|
737
|
-
_nextWhitespace () {
|
|
738
|
-
let count = 0
|
|
739
|
-
while (this._nextCharacter(' ') || this._nextCharacter('\t')) count++
|
|
740
|
-
return count > 0
|
|
741
|
-
}
|
|
742
|
-
|
|
743
|
-
/**
|
|
744
|
-
* Move past the given whitespace-surrounded operator constant if found.
|
|
745
|
-
* @param {string} operator the name of the operator
|
|
746
|
-
* @returns {boolean} whether the operator has been found at the current index
|
|
747
|
-
* @private
|
|
748
|
-
*/
|
|
749
|
-
_nextBinaryOperator (operator) {
|
|
750
|
-
return this._nextWhitespace() && this._nextConstant(operator) && this._nextWhitespace()
|
|
751
|
-
}
|
|
752
|
-
|
|
753
|
-
/**
|
|
754
|
-
* Move past the given whitespace-suffixed operator constant if found.
|
|
755
|
-
* @param {string} operator the name of the operator
|
|
756
|
-
* @returns {boolean} whether the operator has been found at the current index
|
|
757
|
-
* @private
|
|
758
|
-
*/
|
|
759
|
-
_nextUnaryOperator (operator) {
|
|
760
|
-
return this._nextConstant(operator) && this._nextWhitespace()
|
|
761
|
-
}
|
|
762
|
-
|
|
763
|
-
/**
|
|
764
|
-
* Move past the minus operator if found.
|
|
765
|
-
* @returns {boolean} whether the operator has been found at the current index
|
|
766
|
-
* @private
|
|
767
|
-
*/
|
|
768
|
-
_nextMinusOperator () {
|
|
769
|
-
// In order to avoid unnecessary minus operators for negative numbers,
|
|
770
|
-
// we have to check what follows the minus sign.
|
|
771
|
-
return this._nextCharacter('-') && !this._nextDigit() && !this._nextConstant('INF')
|
|
772
|
-
}
|
|
773
|
-
|
|
774
|
-
/**
|
|
775
|
-
* Move past the given method name and its immediately following opening parenthesis if found.
|
|
776
|
-
* @param {string} methodName the name of the method
|
|
777
|
-
* @returns {boolean} whether the method has been found at the current index
|
|
778
|
-
* @private
|
|
779
|
-
*/
|
|
780
|
-
_nextMethod (methodName) {
|
|
781
|
-
return this._nextConstant(methodName, true) && this._nextCharacter('(')
|
|
782
|
-
}
|
|
783
|
-
|
|
784
|
-
/**
|
|
785
|
-
* Move past (required) whitespace and the given suffix name if found.
|
|
786
|
-
* @param {string} suffixName the name of the suffix
|
|
787
|
-
* @returns {boolean} whether the suffix has been found at the current index
|
|
788
|
-
* @private
|
|
789
|
-
*/
|
|
790
|
-
_nextSuffix (suffixName) {
|
|
791
|
-
return this._nextWhitespace() && this._nextConstant(suffixName)
|
|
792
|
-
}
|
|
793
|
-
|
|
794
|
-
/**
|
|
795
|
-
* Move past an integer value if found; otherwise leave the index unchanged.
|
|
796
|
-
* @returns {boolean} whether an integer value has been found at the current index
|
|
797
|
-
* @private
|
|
798
|
-
*/
|
|
799
|
-
_nextIntegerValue () {
|
|
800
|
-
return this._nextWithRegularExpression(INTEGER_VALUE_REGEXP)
|
|
801
|
-
}
|
|
802
|
-
|
|
803
|
-
/**
|
|
804
|
-
* Move past a decimal value with a fractional part if found; otherwise leave the index unchanged.
|
|
805
|
-
* Whole numbers must be found with {@link #nextIntegerValue()}.
|
|
806
|
-
*
|
|
807
|
-
* @returns {boolean} whether a decimal value has been found at the current index
|
|
808
|
-
* @private
|
|
809
|
-
*/
|
|
810
|
-
_nextDecimalValue () {
|
|
811
|
-
return this._nextWithRegularExpression(DECIMAL_VALUE_REGEXP)
|
|
812
|
-
}
|
|
813
|
-
|
|
814
|
-
/**
|
|
815
|
-
* Move past a floating-point-number value with an exponential part
|
|
816
|
-
* or one of the special constants 'NaN', '-INF', and 'INF' if found;
|
|
817
|
-
* otherwise leave the index unchanged.
|
|
818
|
-
* Whole numbers must be found with {@link #nextIntegerValue()}.
|
|
819
|
-
* Decimal numbers must be found with {@link #nextDecimalValue()}.
|
|
820
|
-
*
|
|
821
|
-
* @returns {boolean} whether a double value has been found at the current index
|
|
822
|
-
* @private
|
|
823
|
-
*/
|
|
824
|
-
_nextDoubleValue () {
|
|
825
|
-
return this._nextWithRegularExpression(DOUBLE_VALUE_REGEXP)
|
|
826
|
-
}
|
|
827
|
-
|
|
828
|
-
/**
|
|
829
|
-
* Move past an enumeration-type value if found; otherwise leave the index unchanged.
|
|
830
|
-
* @returns {boolean} whether an enumeration-type value has been found at the current index
|
|
831
|
-
* @private
|
|
832
|
-
*/
|
|
833
|
-
_nextEnumValue () {
|
|
834
|
-
const lastGoodIndex = this._index
|
|
835
|
-
if (this._nextWithRegularExpression(QUALIFIED_NAME_REGEXP) && this._nextCharacter("'")) {
|
|
836
|
-
do {
|
|
837
|
-
if (!(this._nextWithRegularExpression(IDENTIFIER_REGEXP) || this._nextIntegerValue(true))) {
|
|
838
|
-
this._index = lastGoodIndex
|
|
839
|
-
return false
|
|
840
|
-
}
|
|
841
|
-
} while (this._nextCharacter(','))
|
|
842
|
-
if (this._nextCharacter("'")) return true
|
|
843
|
-
}
|
|
844
|
-
this._index = lastGoodIndex
|
|
845
|
-
return false
|
|
846
|
-
}
|
|
847
|
-
|
|
848
|
-
/**
|
|
849
|
-
* Move past a geography or geometry value if found.
|
|
850
|
-
* @param {boolean} isGeography if true the suffix must be 'geography', if false it must be 'geometry'
|
|
851
|
-
* @param {RegExp} regexp the regular expression for the value within the quotes
|
|
852
|
-
* @returns {boolean} whether a geography/geometry value has been found at the current index
|
|
853
|
-
* @private
|
|
854
|
-
*/
|
|
855
|
-
_nextGeoValue (isGeography, regexp) {
|
|
856
|
-
const prefix = isGeography ? 'geography' : 'geometry'
|
|
857
|
-
if (
|
|
858
|
-
this._index + prefix.length - 1 < this._parseString.length &&
|
|
859
|
-
this._parseString.substring(this._index, this._index + prefix.length).toLowerCase() === prefix
|
|
860
|
-
) {
|
|
861
|
-
this._index += prefix.length
|
|
862
|
-
} else {
|
|
863
|
-
return false
|
|
864
|
-
}
|
|
865
|
-
return this._nextCharacter("'") && this._nextWithRegularExpression(regexp) && this._nextCharacter("'")
|
|
866
|
-
}
|
|
867
|
-
|
|
868
|
-
/**
|
|
869
|
-
* Move past a JSON string if found; otherwise leave the index unchanged.
|
|
870
|
-
* @returns {boolean} whether a JSON string has been found at the current index
|
|
871
|
-
* @private
|
|
872
|
-
*/
|
|
873
|
-
_nextJsonString () {
|
|
874
|
-
return this._nextWithRegularExpression(JSON_STRING_REGEXP)
|
|
875
|
-
}
|
|
876
|
-
|
|
877
|
-
/**
|
|
878
|
-
* Move past a JSON value if found; otherwise leave the index unchanged.
|
|
879
|
-
* @returns {boolean} whether a JSON value has been found at the current index
|
|
880
|
-
* @private
|
|
881
|
-
*/
|
|
882
|
-
_nextJsonValue () {
|
|
883
|
-
return (
|
|
884
|
-
this._nextConstant('null') ||
|
|
885
|
-
this._nextConstant('true') ||
|
|
886
|
-
this._nextConstant('false') ||
|
|
887
|
-
this._nextDoubleValue() ||
|
|
888
|
-
this._nextDecimalValue() ||
|
|
889
|
-
this._nextIntegerValue() ||
|
|
890
|
-
this._nextJsonString() ||
|
|
891
|
-
this._nextJsonArrayOrObject()
|
|
892
|
-
)
|
|
893
|
-
}
|
|
894
|
-
|
|
895
|
-
/**
|
|
896
|
-
* Move past a JSON object member if found; otherwise leave the index unchanged.
|
|
897
|
-
* @returns {boolean} whether a JSON object member has been found at the current index
|
|
898
|
-
* @private
|
|
899
|
-
*/
|
|
900
|
-
_nextJsonMember () {
|
|
901
|
-
const lastGoodIndex = this._index
|
|
902
|
-
if (this._nextJsonString() && this._nextCharacter(':') && this._nextJsonValue()) {
|
|
903
|
-
return true
|
|
904
|
-
}
|
|
905
|
-
this._index = lastGoodIndex
|
|
906
|
-
return false
|
|
907
|
-
}
|
|
908
|
-
|
|
909
|
-
/**
|
|
910
|
-
* Move past a JSON array or object if found; otherwise leave the index unchanged.
|
|
911
|
-
* @returns {boolean} whether a JSON array or object has been found at the current index
|
|
912
|
-
* @private
|
|
913
|
-
*/
|
|
914
|
-
_nextJsonArrayOrObject () {
|
|
915
|
-
const lastGoodIndex = this._index
|
|
916
|
-
if (this._nextCharacter('[')) {
|
|
917
|
-
if (this._nextJsonValue()) {
|
|
918
|
-
while (this._nextCharacter(',')) {
|
|
919
|
-
if (!this._nextJsonValue()) {
|
|
920
|
-
this._index = lastGoodIndex
|
|
921
|
-
return false
|
|
922
|
-
}
|
|
923
|
-
}
|
|
924
|
-
}
|
|
925
|
-
if (this._nextCharacter(']')) return true
|
|
926
|
-
this._index = lastGoodIndex
|
|
927
|
-
return false
|
|
928
|
-
} else if (this._nextCharacter('{')) {
|
|
929
|
-
if (this._nextJsonMember()) {
|
|
930
|
-
while (this._nextCharacter(',')) {
|
|
931
|
-
if (!this._nextJsonMember()) {
|
|
932
|
-
this._index = lastGoodIndex
|
|
933
|
-
return false
|
|
934
|
-
}
|
|
935
|
-
}
|
|
936
|
-
}
|
|
937
|
-
if (this._nextCharacter('}')) return true
|
|
938
|
-
this._index = lastGoodIndex
|
|
939
|
-
return false
|
|
940
|
-
}
|
|
941
|
-
|
|
942
|
-
return false
|
|
943
|
-
}
|
|
944
|
-
|
|
945
|
-
/**
|
|
946
|
-
* Move past a search operator AND if found.
|
|
947
|
-
* @returns {boolean} whether the search operator AND has been found at the current index
|
|
948
|
-
* @private
|
|
949
|
-
*/
|
|
950
|
-
_nextAndOperatorSearch () {
|
|
951
|
-
if (this._nextWhitespace()) {
|
|
952
|
-
const lastGoodIndex = this._index
|
|
953
|
-
if (this._nextUnaryOperator('OR')) return false
|
|
954
|
-
if (!this._nextUnaryOperator('AND')) this._index = lastGoodIndex // implicit AND
|
|
955
|
-
return true
|
|
956
|
-
}
|
|
957
|
-
return false
|
|
958
|
-
}
|
|
959
|
-
|
|
960
|
-
/**
|
|
961
|
-
* Move past a search word if found.
|
|
962
|
-
* @returns {boolean} whether a search word has been found at the current index
|
|
963
|
-
* @private
|
|
964
|
-
*/
|
|
965
|
-
_nextWord () {
|
|
966
|
-
const lastGoodIndex = this._index
|
|
967
|
-
if (this._nextWithRegularExpression(WORD_REGEXP)) {
|
|
968
|
-
const word = this._parseString.substring(lastGoodIndex, this._index)
|
|
969
|
-
if (word !== 'OR' && word !== 'AND' && word !== 'NOT') return true
|
|
970
|
-
}
|
|
971
|
-
this._index = lastGoodIndex
|
|
972
|
-
return false
|
|
973
|
-
}
|
|
974
|
-
|
|
975
|
-
/**
|
|
976
|
-
* Require the next requested token. If the next token is not of the requested kind an exception is thrown.
|
|
977
|
-
* @param {UriTokenizer.TokenKind} tokenKind next token
|
|
978
|
-
* @returns {boolean} true if reading next token was successful
|
|
979
|
-
* @throws {UriSyntaxError} if the token has not been found
|
|
980
|
-
*/
|
|
981
|
-
requireNext (tokenKind) {
|
|
982
|
-
if (this.next(tokenKind)) return true
|
|
983
|
-
throw new UriSyntaxError(UriSyntaxError.Message.TOKEN_REQUIRED, tokenKind, this._parseString, this.getPosition())
|
|
984
|
-
}
|
|
985
|
-
}
|
|
986
|
-
|
|
987
|
-
UriTokenizer.TokenKind = {
|
|
988
|
-
EOF: 'EOF', // signals the end of the string to be parsed
|
|
989
|
-
|
|
990
|
-
// constant-value tokens (convention: uppercase)
|
|
991
|
-
REF: 'REF',
|
|
992
|
-
VALUE: 'VALUE',
|
|
993
|
-
COUNT: 'COUNT',
|
|
994
|
-
METADATA: 'METADATA',
|
|
995
|
-
BATCH: 'BATCH',
|
|
996
|
-
CROSSJOIN: 'CROSSJOIN',
|
|
997
|
-
ALL: 'ALL',
|
|
998
|
-
ENTITY: 'ENTITY',
|
|
999
|
-
ROOT: 'ROOT',
|
|
1000
|
-
IT: 'IT',
|
|
1001
|
-
|
|
1002
|
-
APPLY: 'APPLY', // for the aggregation extension
|
|
1003
|
-
EXPAND: 'EXPAND',
|
|
1004
|
-
FILTER: 'FILTER',
|
|
1005
|
-
LEVELS: 'LEVELS',
|
|
1006
|
-
ORDERBY: 'ORDERBY',
|
|
1007
|
-
SEARCH: 'SEARCH',
|
|
1008
|
-
SELECT: 'SELECT',
|
|
1009
|
-
SKIP: 'SKIP',
|
|
1010
|
-
TOP: 'TOP',
|
|
1011
|
-
|
|
1012
|
-
LAMBDA_ANY: 'LAMBDA_ANY',
|
|
1013
|
-
LAMBDA_ALL: 'LAMBDA_ALL',
|
|
1014
|
-
|
|
1015
|
-
OPEN: 'OPEN',
|
|
1016
|
-
CLOSE: 'CLOSE',
|
|
1017
|
-
COMMA: 'COMMA',
|
|
1018
|
-
SEMI: 'SEMI',
|
|
1019
|
-
COLON: 'COLON',
|
|
1020
|
-
DOT: 'DOT',
|
|
1021
|
-
SLASH: 'SLASH',
|
|
1022
|
-
EQ: 'EQ',
|
|
1023
|
-
STAR: 'STAR',
|
|
1024
|
-
PLUS: 'PLUS',
|
|
1025
|
-
|
|
1026
|
-
NULL: 'NULL',
|
|
1027
|
-
MAX: 'MAX',
|
|
1028
|
-
|
|
1029
|
-
AVERAGE: 'AVERAGE', // for the aggregation extension
|
|
1030
|
-
COUNTDISTINCT: 'COUNTDISTINCT', // for the aggregation extension
|
|
1031
|
-
IDENTITY: 'IDENTITY', // for the aggregation extension
|
|
1032
|
-
MIN: 'MIN', // for the aggregation extension
|
|
1033
|
-
SUM: 'SUM', // for the aggregation extension
|
|
1034
|
-
|
|
1035
|
-
// variable-value tokens (convention: mixed case)
|
|
1036
|
-
ODataIdentifier: 'ODataIdentifier',
|
|
1037
|
-
QualifiedName: 'QualifiedName',
|
|
1038
|
-
ParameterAliasName: 'ParameterAliasName',
|
|
1039
|
-
|
|
1040
|
-
BooleanValue: 'BooleanValue',
|
|
1041
|
-
StringValue: 'StringValue',
|
|
1042
|
-
UnsignedIntegerValue: 'UnsignedIntegerValue',
|
|
1043
|
-
IntegerValue: 'IntegerValue',
|
|
1044
|
-
GuidValue: 'GuidValue',
|
|
1045
|
-
DateValue: 'DateValue',
|
|
1046
|
-
DateTimeOffsetValue: 'DateTimeOffsetValue',
|
|
1047
|
-
TimeOfDayValue: 'TimeOfDayValue',
|
|
1048
|
-
DecimalValue: 'DecimalValue',
|
|
1049
|
-
DoubleValue: 'DoubleValue',
|
|
1050
|
-
DurationValue: 'DurationValue',
|
|
1051
|
-
BinaryValue: 'BinaryValue',
|
|
1052
|
-
EnumValue: 'EnumValue',
|
|
1053
|
-
|
|
1054
|
-
GeographyPoint: 'GeographyPoint',
|
|
1055
|
-
GeometryPoint: 'GeometryPoint',
|
|
1056
|
-
GeographyLineString: 'GeographyLineString',
|
|
1057
|
-
GeometryLineString: 'GeometryLineString',
|
|
1058
|
-
GeographyPolygon: 'GeographyPolygon',
|
|
1059
|
-
GeometryPolygon: 'GeometryPolygon',
|
|
1060
|
-
GeographyMultiPoint: 'GeographyMultiPoint',
|
|
1061
|
-
GeometryMultiPoint: 'GeometryMultiPoint',
|
|
1062
|
-
GeographyMultiLineString: 'GeographyMultiLineString',
|
|
1063
|
-
GeometryMultiLineString: 'GeometryMultiLineString',
|
|
1064
|
-
GeographyMultiPolygon: 'GeographyMultiPolygon',
|
|
1065
|
-
GeometryMultiPolygon: 'GeometryMultiPolygon',
|
|
1066
|
-
GeographyCollection: 'GeographyCollection',
|
|
1067
|
-
GeometryCollection: 'GeometryCollection',
|
|
1068
|
-
|
|
1069
|
-
jsonArrayOrObject: 'jsonArrayOrObject',
|
|
1070
|
-
|
|
1071
|
-
Word: 'Word',
|
|
1072
|
-
Phrase: 'Phrase',
|
|
1073
|
-
|
|
1074
|
-
OrOperatorSearch: 'OrOperatorSearch',
|
|
1075
|
-
AndOperatorSearch: 'AndOperatorSearch',
|
|
1076
|
-
NotOperatorSearch: 'NotOperatorSearch',
|
|
1077
|
-
|
|
1078
|
-
OrOperator: 'OrOperator',
|
|
1079
|
-
AndOperator: 'AndOperator',
|
|
1080
|
-
EqualsOperator: 'EqualsOperator',
|
|
1081
|
-
NotEqualsOperator: 'NotEqualsOperator',
|
|
1082
|
-
GreaterThanOperator: 'GreaterThanOperator',
|
|
1083
|
-
GreaterThanOrEqualsOperator: 'GreaterThanOrEqualsOperator',
|
|
1084
|
-
LessThanOperator: 'LessThanOperator',
|
|
1085
|
-
LessThanOrEqualsOperator: 'LessThanOrEqualsOperator',
|
|
1086
|
-
HasOperator: 'HasOperator',
|
|
1087
|
-
AddOperator: 'AddOperator',
|
|
1088
|
-
SubOperator: 'SubOperator',
|
|
1089
|
-
MulOperator: 'MulOperator',
|
|
1090
|
-
DivOperator: 'DivOperator',
|
|
1091
|
-
ModOperator: 'ModOperator',
|
|
1092
|
-
MinusOperator: 'MinusOperator',
|
|
1093
|
-
NotOperator: 'NotOperator',
|
|
1094
|
-
|
|
1095
|
-
AsOperator: 'AsOperator', // for the aggregation extension
|
|
1096
|
-
FromOperator: 'FromOperator', // for the aggregation extension
|
|
1097
|
-
WithOperator: 'WithOperator', // for the aggregation extension
|
|
1098
|
-
|
|
1099
|
-
CastMethod: 'CastMethod',
|
|
1100
|
-
CeilingMethod: 'CeilingMethod',
|
|
1101
|
-
ConcatMethod: 'ConcatMethod',
|
|
1102
|
-
ContainsMethod: 'ContainsMethod',
|
|
1103
|
-
DateMethod: 'DateMethod',
|
|
1104
|
-
DayMethod: 'DayMethod',
|
|
1105
|
-
EndswithMethod: 'EndswithMethod',
|
|
1106
|
-
FloorMethod: 'FloorMethod',
|
|
1107
|
-
FractionalsecondsMethod: 'FractionalsecondsMethod',
|
|
1108
|
-
GeoDistanceMethod: 'GeoDistanceMethod',
|
|
1109
|
-
GeoIntersectsMethod: 'GeoIntersectsMethod',
|
|
1110
|
-
GeoLengthMethod: 'GeoLengthMethod',
|
|
1111
|
-
HourMethod: 'HourMethod',
|
|
1112
|
-
IndexofMethod: 'IndexofMethod',
|
|
1113
|
-
IsofMethod: 'IsofMethod',
|
|
1114
|
-
LengthMethod: 'LengthMethod',
|
|
1115
|
-
MaxdatetimeMethod: 'MaxdatetimeMethod',
|
|
1116
|
-
MindatetimeMethod: 'MindatetimeMethod',
|
|
1117
|
-
MinuteMethod: 'MinuteMethod',
|
|
1118
|
-
MonthMethod: 'MonthMethod',
|
|
1119
|
-
NowMethod: 'NowMethod',
|
|
1120
|
-
RoundMethod: 'RoundMethod',
|
|
1121
|
-
SecondMethod: 'SecondMethod',
|
|
1122
|
-
StartswithMethod: 'StartswithMethod',
|
|
1123
|
-
SubstringMethod: 'SubstringMethod',
|
|
1124
|
-
TimeMethod: 'TimeMethod',
|
|
1125
|
-
TolowerMethod: 'TolowerMethod',
|
|
1126
|
-
TotaloffsetminutesMethod: 'TotaloffsetminutesMethod',
|
|
1127
|
-
TotalsecondsMethod: 'TotalsecondsMethod',
|
|
1128
|
-
ToupperMethod: 'ToupperMethod',
|
|
1129
|
-
TrimMethod: 'TrimMethod',
|
|
1130
|
-
YearMethod: 'YearMethod',
|
|
1131
|
-
|
|
1132
|
-
IsDefinedMethod: 'IsDefinedMethod', // for the aggregation extension
|
|
1133
|
-
|
|
1134
|
-
AggregateTrafo: 'AggregateTrafo', // for the aggregation extension
|
|
1135
|
-
BottomCountTrafo: 'BottomCountTrafo', // for the aggregation extension
|
|
1136
|
-
BottomPercentTrafo: 'BottomPercentTrafo', // for the aggregation extension
|
|
1137
|
-
BottomSumTrafo: 'BottomSumTrafo', // for the aggregation extension
|
|
1138
|
-
ComputeTrafo: 'ComputeTrafo', // for the aggregation extension
|
|
1139
|
-
ExpandTrafo: 'ExpandTrafo', // for the aggregation extension
|
|
1140
|
-
FilterTrafo: 'FilterTrafo', // for the aggregation extension
|
|
1141
|
-
GroupByTrafo: 'GroupByTrafo', // for the aggregation extension
|
|
1142
|
-
OrderByTrafo: 'OrderByTrafo', // for the aggregation extension
|
|
1143
|
-
SearchTrafo: 'SearchTrafo', // for the aggregation extension
|
|
1144
|
-
SkipTrafo: 'SkipTrafo', // for the aggregation extension
|
|
1145
|
-
TopTrafo: 'TopTrafo', // for the aggregation extension
|
|
1146
|
-
TopCountTrafo: 'TopCountTrafo', // for the aggregation extension
|
|
1147
|
-
TopPercentTrafo: 'TopPercentTrafo', // for the aggregation extension
|
|
1148
|
-
TopSumTrafo: 'TopSumTrafo', // for the aggregation extension
|
|
1149
|
-
|
|
1150
|
-
RollUpSpec: 'RollUpSpec', // for the aggregation extension
|
|
1151
|
-
|
|
1152
|
-
AscSuffix: 'AscSuffix',
|
|
1153
|
-
DescSuffix: 'DescSuffix'
|
|
1154
|
-
}
|
|
1155
|
-
|
|
1156
|
-
module.exports = UriTokenizer
|