Search in sources :

Example 1 with TagPtr

use of org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr in project legend-engine by finos.

the class DomainParseTreeWalker method visitTaggedValues.

private List<TaggedValue> visitTaggedValues(DomainParserGrammar.TaggedValuesContext ctx) {
    return ListIterate.collect(ctx.taggedValue(), taggedValueContext -> {
        TaggedValue taggedValue = new TaggedValue();
        TagPtr tagPtr = new TagPtr();
        taggedValue.tag = tagPtr;
        tagPtr.profile = PureGrammarParserUtility.fromQualifiedName(taggedValueContext.qualifiedName().packagePath() == null ? Collections.emptyList() : taggedValueContext.qualifiedName().packagePath().identifier(), taggedValueContext.qualifiedName().identifier());
        tagPtr.value = PureGrammarParserUtility.fromIdentifier(taggedValueContext.identifier());
        taggedValue.value = PureGrammarParserUtility.fromGrammarString(taggedValueContext.STRING().getText(), true);
        taggedValue.tag.profileSourceInformation = this.walkerSourceInformation.getSourceInformation(taggedValueContext.qualifiedName());
        taggedValue.tag.sourceInformation = this.walkerSourceInformation.getSourceInformation(taggedValueContext.identifier());
        taggedValue.sourceInformation = this.walkerSourceInformation.getSourceInformation(taggedValueContext);
        return taggedValue;
    });
}
Also used : TaggedValue(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TaggedValue) TagPtr(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr)

Example 2 with TagPtr

use of org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr in project legend-engine by finos.

the class ServiceParseTreeWalker method visitTaggedValues.

private List<TaggedValue> visitTaggedValues(ServiceParserGrammar.TaggedValuesContext ctx) {
    return ListIterate.collect(ctx.taggedValue(), taggedValueContext -> {
        TaggedValue taggedValue = new TaggedValue();
        TagPtr tagPtr = new TagPtr();
        taggedValue.tag = tagPtr;
        tagPtr.profile = PureGrammarParserUtility.fromQualifiedName(taggedValueContext.qualifiedName().packagePath() == null ? Collections.emptyList() : taggedValueContext.qualifiedName().packagePath().identifier(), taggedValueContext.qualifiedName().identifier());
        tagPtr.value = PureGrammarParserUtility.fromIdentifier(taggedValueContext.identifier());
        taggedValue.value = PureGrammarParserUtility.fromGrammarString(taggedValueContext.STRING().getText(), true);
        taggedValue.tag.profileSourceInformation = this.walkerSourceInformation.getSourceInformation(taggedValueContext.qualifiedName());
        taggedValue.tag.sourceInformation = this.walkerSourceInformation.getSourceInformation(taggedValueContext.identifier());
        taggedValue.sourceInformation = this.walkerSourceInformation.getSourceInformation(taggedValueContext);
        return taggedValue;
    });
}
Also used : TaggedValue(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TaggedValue) TagPtr(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr)

Example 3 with TagPtr

use of org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr in project legend-engine by finos.

the class DataSpaceParseTreeWalker method visitTaggedValues.

private List<TaggedValue> visitTaggedValues(DataSpaceParserGrammar.TaggedValuesContext ctx) {
    return ListIterate.collect(ctx.taggedValue(), taggedValueContext -> {
        TaggedValue taggedValue = new TaggedValue();
        TagPtr tagPtr = new TagPtr();
        taggedValue.tag = tagPtr;
        tagPtr.profile = PureGrammarParserUtility.fromQualifiedName(taggedValueContext.qualifiedName().packagePath() == null ? Collections.emptyList() : taggedValueContext.qualifiedName().packagePath().identifier(), taggedValueContext.qualifiedName().identifier());
        tagPtr.value = PureGrammarParserUtility.fromIdentifier(taggedValueContext.identifier());
        taggedValue.value = PureGrammarParserUtility.fromGrammarString(taggedValueContext.STRING().getText(), true);
        taggedValue.tag.profileSourceInformation = this.walkerSourceInformation.getSourceInformation(taggedValueContext.qualifiedName());
        taggedValue.tag.sourceInformation = this.walkerSourceInformation.getSourceInformation(taggedValueContext.identifier());
        taggedValue.sourceInformation = this.walkerSourceInformation.getSourceInformation(taggedValueContext);
        return taggedValue;
    });
}
Also used : TaggedValue(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TaggedValue) TagPtr(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr)

Example 4 with TagPtr

use of org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr in project legend-engine by finos.

the class QueryStoreManager method documentToQuery.

private static Query documentToQuery(Document document) {
    Query query = new Query();
    query.id = document.getString("id");
    query.name = document.getString("name");
    query.description = document.getString("description");
    query.groupId = document.getString("groupId");
    query.artifactId = document.getString("artifactId");
    query.versionId = document.getString("versionId");
    query.mapping = document.getString("mapping");
    query.runtime = document.getString("runtime");
    query.content = document.getString("content");
    query.owner = document.getString("owner");
    if (document.get("taggedValues") != null) {
        query.taggedValues = ListIterate.collect(document.getList("taggedValues", Document.class), _doc -> {
            TaggedValue taggedValue = new TaggedValue();
            taggedValue.tag = new TagPtr();
            taggedValue.tag.profile = _doc.getEmbedded(Lists.fixedSize.of("tag", "profile"), String.class);
            taggedValue.tag.value = _doc.getEmbedded(Lists.fixedSize.of("tag", "value"), String.class);
            taggedValue.value = _doc.getString("value");
            return taggedValue;
        });
    }
    if (document.get("stereotypes") != null) {
        query.stereotypes = ListIterate.collect(document.getList("stereotypes", Document.class), _doc -> {
            StereotypePtr stereotypePtr = new StereotypePtr();
            stereotypePtr.profile = _doc.getString("profile");
            stereotypePtr.value = _doc.getString("value");
            return stereotypePtr;
        });
    }
    return query;
}
Also used : Document(org.bson.Document) MongoClient(com.mongodb.client.MongoClient) MongoCollection(com.mongodb.client.MongoCollection) Projections(com.mongodb.client.model.Projections) Lists(org.eclipse.collections.api.factory.Lists) TaggedValue(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TaggedValue) QuerySearchSpecification(org.finos.legend.engine.application.query.model.QuerySearchSpecification) MongoDatabase(com.mongodb.client.MongoDatabase) Vault(org.finos.legend.engine.shared.core.vault.Vault) ArrayList(java.util.ArrayList) Filters(com.mongodb.client.model.Filters) Bson(org.bson.conversions.Bson) TagPtr(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr) Query(org.finos.legend.engine.application.query.model.Query) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) JsonProcessingException(com.fasterxml.jackson.core.JsonProcessingException) ListIterate(org.eclipse.collections.impl.utility.ListIterate) Instant(java.time.Instant) SourceVersion(javax.lang.model.SourceVersion) QueryEvent(org.finos.legend.engine.application.query.model.QueryEvent) List(java.util.List) LazyIterate(org.eclipse.collections.impl.utility.LazyIterate) Response(javax.ws.rs.core.Response) Pattern(java.util.regex.Pattern) StereotypePtr(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.StereotypePtr) Query(org.finos.legend.engine.application.query.model.Query) TaggedValue(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TaggedValue) TagPtr(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr) StereotypePtr(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.StereotypePtr)

Example 5 with TagPtr

use of org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr in project legend-engine by finos.

the class TestQueryStoreManager method createTestTaggedValue.

private static TaggedValue createTestTaggedValue(String profile, String tag, String value) {
    TaggedValue taggedValue = new TaggedValue();
    taggedValue.tag = new TagPtr();
    taggedValue.tag.profile = profile;
    taggedValue.tag.value = tag;
    taggedValue.value = value;
    return taggedValue;
}
Also used : TaggedValue(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TaggedValue) TagPtr(org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr)

Aggregations

TagPtr (org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TagPtr)6 TaggedValue (org.finos.legend.engine.protocol.pure.v1.model.packageableElement.domain.TaggedValue)6 JsonProcessingException (com.fasterxml.jackson.core.JsonProcessingException)1 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)1 MongoClient (com.mongodb.client.MongoClient)1 MongoCollection (com.mongodb.client.MongoCollection)1 MongoDatabase (com.mongodb.client.MongoDatabase)1 Filters (com.mongodb.client.model.Filters)1 Projections (com.mongodb.client.model.Projections)1 Instant (java.time.Instant)1 ArrayList (java.util.ArrayList)1 List (java.util.List)1 Pattern (java.util.regex.Pattern)1 SourceVersion (javax.lang.model.SourceVersion)1 Response (javax.ws.rs.core.Response)1 Document (org.bson.Document)1 Bson (org.bson.conversions.Bson)1 Lists (org.eclipse.collections.api.factory.Lists)1 LazyIterate (org.eclipse.collections.impl.utility.LazyIterate)1 ListIterate (org.eclipse.collections.impl.utility.ListIterate)1