Skip to content

Commit 224ac54

Browse files
committed
Implement
1 parent 37957ca commit 224ac54

File tree

2 files changed

+24
-7
lines changed

2 files changed

+24
-7
lines changed

CHANGELOG.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,15 @@
33
## version 5.3.0-SNAPSHOT
44
*Released*: TBD
55
* Update to Gradle 8.2.1 and adjust away from deprecated syntax
6+
* Add Ontology and Lineage filter type operators
67

78
## version 5.2.0
89
*Released*: 3 May 2023
910
* Add `RenameContainerCommand` and `RenameContainerResponse`
1011

1112
## version 5.1.0
1213
*Released*: 3 March 2023
13-
* Delegate first request behavior to the configured `CredentialsProvider`. Connection-based providers invoke
14+
* Delegate first request behavior to ``the configured `CredentialsProvider`. Connection-based providers invoke
1415
`login-ensureLogin.api` and connection-less providers invoke `login-whoAmI.api`.
1516
* Restore connection-based authentication for `BasicCredentialsProvider`
1617
* Add logging to `NetrcFileParser` to help with debugging authentication problems
@@ -19,9 +20,9 @@
1920

2021
## version 5.0.1
2122
*Released*: 30 January 2023
22-
* Fix regression introduced in 5.0.0: `RowsResponse.fixupParsedData()` was called before `_requiredVersion` was set. This caused
23+
* Fix regression introduced in 5.0.0: ```RowsResponse.fixupParsedData()` was called before `_requiredVersion` was set. This caused
2324
the fixup method to skip `BigDecimal` to `Double` conversions in the returned data maps.
24-
25+
``
2526
## version 5.0.0
2627
*Released*: 24 January 2023
2728
* Refactor the `Command` class hierarchy:
@@ -42,7 +43,7 @@
4243
* Introduce `HasRequiredVersion` interface and use it when instantiating `CommandResponse` subclasses that need required version
4344
* Remove all `Command` copy constructors. Same rationale as the earlier removal of `copy` methods.
4445
* Switch `SelectRowsCommand` and `NAbRunsCommand` to post their parameters as JSON
45-
* Fix `NAbReplicate` to handle `"NaN"` values
46+
* Fix `NAbReplicate` to handle `"NaN"` values``
4647
* Remove `CommandException` from `getHttpRequest()` throws list
4748
* Adjust the `Demo.java` and `Test.java` tests to match current sample data and `Command` hierarchy changes
4849

src/org/labkey/remoteapi/query/Filter.java

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,10 @@ public enum Operator
3030
// WARNING: Keep in sync and in order with all other client apis and docs:
3131
// - server: CompareType.java
3232
// - java: Filter.java
33-
// - js: Filter.js
33+
// - js: Types.ts
3434
// - R: makeFilter.R, makeFilter.Rd
35-
// - Python & Perl don't have a filter operator enum
35+
// - Python: query.py
36+
// - Perl doesn't have a filter operator enum
3637

3738
//
3839
// These operators require a data value
@@ -90,7 +91,22 @@ public enum Operator
9091
//
9192

9293
Q("Search", "q", "Q", true),
93-
WHERE("Where", "where", "WHERE", true)
94+
WHERE("Where", "where", "WHERE", true),
95+
96+
//
97+
// Ontology operators
98+
//
99+
100+
ONTOLOGY_IN_SUBTREE("Is In Subtree", "concept:insubtree", "ONTOLOGY_IN_SUBTREE", true),
101+
ONTOLOGY_NOT_IN_SUBTREE("Is Not In Subtree", "concept:notinsubtree", "ONTOLOGY_NOT_IN_SUBTREE", true),
102+
103+
//
104+
// Lineage operators
105+
//
106+
107+
EXP_CHILD_OF("Is Child Of", "exp:childof", "EXP_CHILD_OF", true),
108+
EXP_PARENT_OF("Is Parent Of", "exp:parentof", "EXP_PARENT_OF", true),
109+
EXP_LINEAGE_OF("In The Lineage Of", "exp:lineageof", "EXP_LINEAGE_OF", true)
94110
;
95111

96112
private static final Map<String, Operator> _programmaticNameToOperator = Arrays.stream(Operator.values())

0 commit comments

Comments
 (0)