resource-registry/src/test/resources/queries/query3.match.query

32 lines
2.2 KiB
Plaintext

SELECT EXPAND(eservice) FROM (
MATCH
{class: EService, as: eservice, where: ($currentMatch['@class'] INSTANCEOF 'EService')}
.outE('IsIdentifiedBy').inV("SoftwareFacet") {where: (($currentMatch['@class'] INSTANCEOF 'SoftwareFacet') AND name='data-transfer-service' AND group='DataTransfer')}
.inE('IsIdentifiedBy').outV('Eservice') {where: ($matched.eservice == $currentMatch)}
.outE('ConsistsOf') {where: (propagationConstraint.add='propagate')}
.inV("StateFacet") {where: (($currentMatch['@class'] INSTANCEOF 'StateFacet') AND value="down")}
.inE('ConsistsOf').outV('Eservice') {where: ($matched.eservice == $currentMatch)}
.outE('ConsistsOf').inV("AccessPointFacet") {where: (($currentMatch['@class'] INSTANCEOF 'AccessPointFacet') AND endpoint="http://smartexecutor1.dev.int.d4science.net:80/data-transfer-service/gcube/resource")}
.inE('ConsistsOf').outV('Eservice') {where: ($matched.eservice == $currentMatch)}
.inE('Activates').outV("HostingNode").outE('ConsistsOf').inV("CPUFacet") {where: (vendor='GenuineIntel')}
RETURN
eservice
)
SELECT EXPAND(ret) FROM (
MATCH
{class: EService, as: eservice, where: ($currentMatch['@class'] INSTANCEOF 'EService')}
.outE('IsIdentifiedBy').inV("SoftwareFacet") {where: (($currentMatch['@class'] INSTANCEOF 'SoftwareFacet') AND name='data-transfer-service' AND group='DataTransfer')}
.inE('IsIdentifiedBy').outV('Eservice') {where: ($matched.eservice == $currentMatch)}
.outE('ConsistsOf') {where: (propagationConstraint.add='propagate')}
.inV("StateFacet") {where: (($currentMatch['@class'] INSTANCEOF 'StateFacet') AND value="ready")}
.inE('ConsistsOf').outV('Eservice') {where: ($matched.eservice == $currentMatch)}
.outE('ConsistsOf').inV("AccessPointFacet") {where: (($currentMatch['@class'] INSTANCEOF 'AccessPointFacet') AND endpoint="http://smartexecutor1.dev.int.d4science.net:80/data-transfer-service/gcube/resource")}
.inE('ConsistsOf').outV('Eservice') {where: ($matched.eservice == $currentMatch)}
.inE('Activates').outV("HostingNode").outE('ConsistsOf').inV("CPUFacet") {where: (($currentMatch['@class'] INSTANCEOF 'CPUFacet') AND vendor='GenuineIntel')}
RETURN
DISTINCT(eservice) as ret
)