Commit Graph

2875 Commits

Author SHA1 Message Date
00afad43bc Move QueryExecutorUtils to ApiQueryFilterUtils 2025-05-30 20:35:36 -05:00
3888aab490 Initial checkin 2025-05-30 20:32:28 -05:00
8b6aad5412 Avoid an NPE if a table doesn't have fields 2025-05-30 20:26:11 -05:00
90cc5a32ac Extract an interface from QBitComponentMetaDataProducer (which itself is still useful as a base class, so you don't have to implement get/setQBitConfig yourself), for implementations that already have a different base class. 2025-05-30 20:25:53 -05:00
395f94081f try again for stable map of properties 2025-05-29 15:27:25 -05:00
7a450eed08 Rebuild with tableMetaData example, and now stable content map for query & count 2025-05-29 12:32:20 -05:00
7b3cafe348 Test fixes 2025-05-28 08:54:34 -05:00
1c4f917939 Test fixes 2025-05-28 08:35:20 -05:00
437448fd81 Add tryIgnore, tryCatch methods 2025-05-27 16:44:45 -05:00
d63f13bb55 Avoid a null pointer if criteria has no values 2025-05-27 16:43:13 -05:00
add41a852b Minor cleanups wrapping up app-api-version in middleware api 2025-05-27 16:42:39 -05:00
6314ad310b Use same example qinstance in meta-data and table-meta-data specs 2025-05-27 16:42:01 -05:00
35c6a13ce3 Update to make test code here available in qqq-middleware-api module 2025-05-27 16:37:54 -05:00
afd8084d45 Initial build of api aware middleware 2025-05-27 16:37:30 -05:00
23e9ac5b61 Support queryJoins and distinctCount in memory count action 2025-05-27 11:34:04 -05:00
2a76736474 Introduce QueryOrCountInputInterface 2025-05-27 11:33:45 -05:00
4b9e8e0c51 Add method to get all plugins (helpful if you want to reset them) 2025-05-27 11:33:08 -05:00
8b6f4b635a Add support for "otherValues" in possibleValuesStandalone 2025-05-27 11:31:30 -05:00
a4b1a8858d Move handleQueryNullLimit to utils class 2025-05-27 11:30:38 -05:00
78eb315558 initial build of table meta-data, query, and count specs, IO, executors 2025-05-27 11:29:54 -05:00
83684d8f2e make version for path come from the middleware spec, in support of application-versions in addition to middleware versions 2025-05-27 11:24:56 -05:00
13ef0dfdb8 Support Long values 2025-05-27 11:24:11 -05:00
6ae30f4d65 Add getFormParam and getQueryParam methods, for common use-case of single-value 2025-05-27 11:24:02 -05:00
13189f5855 Add TableMetaDataSpecV1 and TableQuerySpecV1 2025-05-23 16:42:43 -05:00
e89c837690 Update to make example instance statically (since for an api-aware middleware, this code might end up running multiple times) 2025-05-23 16:42:29 -05:00
3b1178a7c6 Update to wrap either a QFrontendFieldMetaData, or a (full) QFieldMetaData 2025-05-23 16:41:37 -05:00
565a85afd7 Add setTableVariantInSession 2025-05-23 16:40:28 -05:00
ce4cc37586 Updates per changes in base class 2025-05-23 16:40:04 -05:00
828a0ed594 add method getVersionBasePath()
add method preExecute()
2025-05-23 16:21:08 -05:00
09d8aac77f provide default implementation in handleOutput;
update newObjectFromTypeArgument to support class hierarchies of depth > 1
add AbstractMiddlewareVersion as argument to some methods
add pre-execute method
add getRequestBodyAsJsonObject
2025-05-23 15:38:04 -05:00
b84406d8ef Add support for executing table triggers beyond what the core table provides (scripts) via custom plugins (adding for workflows qbit)
also move RecordAutomationHandler to an interface (RecordAutomationHandlerInterface)
2025-05-23 15:27:50 -05:00
ca33b28f7a Add Map of "otherValues" 2025-05-23 15:03:30 -05:00
2634773b7f Improvements to UX for table triggers (require appropriate fields, only allow tables that have automations) 2025-05-23 15:02:31 -05:00
5754c940af Add validation and enrichment for QSupplementalFieldMetaData, plus option to include in frontendMetaData 2025-05-23 12:16:40 -05:00
ff7abe89f5 Add overload constructor that takes al ist of field names (e.g., in support of api-versioning) 2025-05-23 12:15:45 -05:00
1eb8b0c560 Add isHidden, and supplementalFieldMetaData 2025-05-23 12:15:20 -05:00
b16d18b8cf Add support for running in an api-Versioned manner 2025-05-23 12:14:50 -05:00
10fe644e60 Add support for omitFieldNames - by default, the join field, but also programmer-configurable. 2025-05-23 12:14:26 -05:00
37463c7676 Set tableName in toQRecord() 2025-05-23 12:05:34 -05:00
9877838c7f Add supplementalInstanceMetaData 2025-05-23 12:03:52 -05:00
802d367b94 Change to fetch the variant record - helps w/ input values being in other types, and, verifies the record exists! 2025-05-23 12:02:56 -05:00
63b956a032 Change a few exceptions to user-facing in here 2025-05-23 12:00:59 -05:00
5ad6354e15 Add isClassAvailable method (idea being to support optional maven dependencies!) 2025-05-23 12:00:36 -05:00
75fc016a4b Add support for variants to memory backend 2025-05-23 11:30:52 -05:00
5daa221ac9 Use getValueString, not cast to string. 2025-05-23 11:11:18 -05:00
89eec41ac0 Add method setDisplayValuesInRecordsIncludingPossibleValueTranslations 2025-05-23 11:06:30 -05:00
18232d5e80 Add transaction to AggregateInput and CountInput 2025-05-23 11:04:29 -05:00
ed91d3fdbe Merged dev into feature/workflows-support 2025-05-19 15:59:24 -05:00
dfb584b367 Updating to 0.26.0 2025-05-19 15:20:47 -05:00
504c53b108 Merge tag 'version-0.25.0' into dev
Tag release
2025-05-19 15:20:43 -05:00