All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_Service_Impl Maven / Gradle / Ivy

The newest version!
package org.finos.legend.pure.generated;
import org.eclipse.collections.api.RichIterable;
import org.eclipse.collections.api.factory.Lists;
import org.eclipse.collections.api.factory.Maps;
import org.eclipse.collections.api.list.ListIterable;
import org.eclipse.collections.api.list.MutableList;
import org.eclipse.collections.api.map.MutableMap;
import org.finos.legend.pure.m3.execution.ExecutionSupport;
import org.finos.legend.pure.m4.ModelRepository;
import org.finos.legend.pure.m4.coreinstance.CoreInstance;
import org.finos.legend.pure.m4.coreinstance.SourceInformation;
import org.finos.legend.pure.m4.coreinstance.factory.CoreInstanceFactory;
import org.finos.legend.pure.runtime.java.compiled.execution.*;
import org.finos.legend.pure.runtime.java.compiled.execution.sourceInformation.E_;
import org.finos.legend.pure.runtime.java.compiled.generation.processors.support.*;
import org.finos.legend.pure.runtime.java.compiled.generation.processors.support.coreinstance.ReflectiveCoreInstance;
import org.finos.legend.pure.runtime.java.compiled.generation.processors.support.coreinstance.ValCoreInstance;
import org.finos.legend.pure.runtime.java.compiled.generation.processors.support.coreinstance.GetterOverrideExecutor;
import org.finos.legend.pure.runtime.java.compiled.generation.processors.support.function.*;
import org.finos.legend.pure.runtime.java.compiled.generation.processors.support.function.defended.*;
import org.eclipse.collections.api.block.function.Function0;
import org.eclipse.collections.api.block.function.Function;
import org.eclipse.collections.api.block.function.Function2;
import org.finos.legend.pure.runtime.java.compiled.generation.processors.support.map.PureMap;
public class Root_meta_external_store_service_metamodel_Service_Impl extends Root_meta_external_store_service_metamodel_ServiceStoreElement_Impl implements Root_meta_external_store_service_metamodel_Service
{
    public static final String tempTypeName = "Service";
    private static final String tempFullTypeId = "Root::meta::external::store::service::metamodel::Service";
    private static final KeyIndex KEY_INDEX = keyIndexBuilder(11)
           .withKeys("Root::meta::external::store::service::metamodel::ServiceStoreElement", "id", "owner", "parent", "path")
           .withKeys("Root::meta::pure::metamodel::type::Any", "classifierGenericType", "elementOverride")
           .withKeys(tempFullTypeId, "method", "parameters", "requestBody", "response", "security")
           .build();
    private CoreInstance classifier;
    public Root_meta_external_store_service_metamodel_Service_Impl(String id)
    {
        super(id);
    }

    public Root_meta_external_store_service_metamodel_Service_Impl(String name, SourceInformation sourceInformation, CoreInstance classifier)
    {
        this(name == null ? "Anonymous_NoCounter": name);
        this.setSourceInformation(sourceInformation);
        this.classifier = classifier;
    }

    @Override
    public CoreInstance getClassifier()
    {
        return this.classifier;
    }

    @Override
    public RichIterable getKeys()
    {
        return KEY_INDEX.getKeys();
    }

    @Override
    public ListIterable getRealKeyByName(String name)
    {
        return KEY_INDEX.getRealKeyByName(name);
    }

    @Override
    public CoreInstance getValueForMetaPropertyToOne(String keyName)
    {
        switch (keyName)
        {
            case "classifierGenericType":
            {
                return ValCoreInstance.toCoreInstance(_classifierGenericType());
            }
            case "elementOverride":
            {
                return ValCoreInstance.toCoreInstance(_elementOverride());
            }
            case "id":
            {
                return ValCoreInstance.toCoreInstance(_id());
            }
            case "method":
            {
                return ValCoreInstance.toCoreInstance(_method());
            }
            case "owner":
            {
                return ValCoreInstance.toCoreInstance(_owner());
            }
            case "parent":
            {
                return ValCoreInstance.toCoreInstance(_parent());
            }
            case "path":
            {
                return ValCoreInstance.toCoreInstance(_path());
            }
            case "requestBody":
            {
                return ValCoreInstance.toCoreInstance(_requestBody());
            }
            case "response":
            {
                return ValCoreInstance.toCoreInstance(_response());
            }
            default:
            {
                return super.getValueForMetaPropertyToOne(keyName);
            }
        }
    }

    @Override
    public ListIterable getValueForMetaPropertyToMany(String keyName)
    {
        switch (keyName)
        {
            case "parameters":
            {
                return ValCoreInstance.toCoreInstances(_parameters());
            }
            case "security":
            {
                return ValCoreInstance.toCoreInstances(_security());
            }
            default:
            {
                return super.getValueForMetaPropertyToMany(keyName);
            }
        }
    }

    public org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ComplexTypeReference _response;
    public Root_meta_external_store_service_metamodel_Service _response(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ComplexTypeReference val)
    {
        this._response = val;
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _response(RichIterable val)
    {
        return _response(val.getFirst());
    }

    public Root_meta_external_store_service_metamodel_Service _responseRemove()
    {
        this._response = null;
        return this;
    }


    public void _reverse_response(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ComplexTypeReference val)
    {
        this._response = val;
    }

    public void _sever_reverse_response(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ComplexTypeReference val)
    {
        this._response = null;
    }

    public org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ComplexTypeReference _response()
    {
        return this._elementOverride() == null || !GetterOverrideExecutor.class.isInstance(this._elementOverride()) ? this._response : (org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ComplexTypeReference)((GetterOverrideExecutor)this._elementOverride()).executeToOne(this, "Root::meta::external::store::service::metamodel::Service", "response");
    }

    public Root_meta_external_store_service_metamodel_Service _id(java.lang.String val)
    {
        this._id = val;
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _id(RichIterable val)
    {
        return _id(val.getFirst());
    }

    public Root_meta_external_store_service_metamodel_Service _idRemove()
    {
        this._id = null;
        return this;
    }


    public org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_TypeReference _requestBody;
    public Root_meta_external_store_service_metamodel_Service _requestBody(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_TypeReference val)
    {
        this._requestBody = val;
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _requestBody(RichIterable val)
    {
        return _requestBody(val.getFirst());
    }

    public Root_meta_external_store_service_metamodel_Service _requestBodyRemove()
    {
        this._requestBody = null;
        return this;
    }


    public void _reverse_requestBody(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_TypeReference val)
    {
        this._requestBody = val;
    }

    public void _sever_reverse_requestBody(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_TypeReference val)
    {
        this._requestBody = null;
    }

    public org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_TypeReference _requestBody()
    {
        return this._elementOverride() == null || !GetterOverrideExecutor.class.isInstance(this._elementOverride()) ? this._requestBody : (org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_TypeReference)((GetterOverrideExecutor)this._elementOverride()).executeToOne(this, "Root::meta::external::store::service::metamodel::Service", "requestBody");
    }

    public Root_meta_external_store_service_metamodel_Service _elementOverride(org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.ElementOverride val)
    {
        this._elementOverride = val;
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _elementOverride(RichIterable val)
    {
        return _elementOverride(val.getFirst());
    }

    public Root_meta_external_store_service_metamodel_Service _elementOverrideRemove()
    {
        this._elementOverride = null;
        return this;
    }


    public Root_meta_external_store_service_metamodel_Service _owner(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ServiceStore val)
    {
        this._owner = val;
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _owner(RichIterable val)
    {
        return _owner(val.getFirst());
    }

    public Root_meta_external_store_service_metamodel_Service _ownerRemove()
    {
        this._owner = null;
        return this;
    }


    public Root_meta_external_store_service_metamodel_Service _path(java.lang.String val)
    {
        this._path = val;
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _path(RichIterable val)
    {
        return _path(val.getFirst());
    }

    public Root_meta_external_store_service_metamodel_Service _pathRemove()
    {
        this._path = null;
        return this;
    }


    public Root_meta_external_store_service_metamodel_Service _parent(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ServiceGroup val)
    {
        this._parent = val;
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _parent(RichIterable val)
    {
        return _parent(val.getFirst());
    }

    public Root_meta_external_store_service_metamodel_Service _parentRemove()
    {
        this._parent = null;
        return this;
    }


    public org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.Enum _method;
    public Root_meta_external_store_service_metamodel_Service _method(org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.Enum val)
    {
        this._method = val;
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _method(RichIterable val)
    {
        return _method(val.getFirst());
    }

    public Root_meta_external_store_service_metamodel_Service _methodRemove()
    {
        this._method = null;
        return this;
    }


    public void _reverse_method(org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.Enum val)
    {
        this._method = val;
    }

    public void _sever_reverse_method(org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.Enum val)
    {
        this._method = null;
    }

    public org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.Enum _method()
    {
        return this._method;
    }

    public RichIterable _parameters = Lists.mutable.with();
    private Root_meta_external_store_service_metamodel_Service _parameters(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ServiceParameter val, boolean add)
    {
        if (val == null)
        {
            if (!add)
            {
                this._parameters = Lists.mutable.with();
            }
            return this;
        }
        if (add)
        {
            if (!(this._parameters instanceof MutableList))
            {
                this._parameters = this._parameters.toList();
            }
            ((MutableList)this._parameters).add(val);
        }
        else
        {
            this._parameters = (val == null ? Lists.mutable.empty() : Lists.mutable.with(val));
        }
        return this;
    }

    private Root_meta_external_store_service_metamodel_Service _parameters(RichIterable val, boolean add)
    {
        if (add)
        {
            if (!(this._parameters instanceof MutableList))
            {
                this._parameters = this._parameters.toList();
            }
            ((MutableList)this._parameters).addAllIterable(val);
        }
        else
        {
            this._parameters = val;
        }
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _parameters(RichIterable val)
    {
        return this._parameters(val, false);
    }

    public Root_meta_external_store_service_metamodel_Service _parametersAdd(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ServiceParameter val)
    {
        return this._parameters(Lists.immutable.with(val), true);
    }

    public Root_meta_external_store_service_metamodel_Service _parametersAddAll(RichIterable val)
    {
        return this._parameters(val, true);
    }

    public Root_meta_external_store_service_metamodel_Service _parametersRemove()
    {
        this._parameters = Lists.mutable.empty();
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _parametersRemove(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ServiceParameter val)
    {
        if (!(this._parameters instanceof MutableList))
        {
            this._parameters = this._parameters.toList();
        }
        ((MutableList)this._parameters).remove(val);
        return this;
    }


    public void _reverse_parameters(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ServiceParameter val)
    {
        if (!(this._parameters instanceof MutableList))
        {
            this._parameters = this._parameters.toList();
        }
        ((MutableList)this._parameters).add(val);
    }

    public void _sever_reverse_parameters(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ServiceParameter val)
    {
        if (!(this._parameters instanceof MutableList))
        {
            this._parameters = this._parameters.toList();
        }
        ((MutableList)this._parameters).remove(val);
    }

    public RichIterable _parameters()
    {
        return this._elementOverride() == null || !GetterOverrideExecutor.class.isInstance(this._elementOverride()) ? this._parameters : (RichIterable)((GetterOverrideExecutor)this._elementOverride()).executeToMany(this, "Root::meta::external::store::service::metamodel::Service", "parameters");
    }

    public RichIterable _security = Lists.mutable.with();
    private Root_meta_external_store_service_metamodel_Service _security(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_SecuritySchemeRequirement val, boolean add)
    {
        if (val == null)
        {
            if (!add)
            {
                this._security = Lists.mutable.with();
            }
            return this;
        }
        if (add)
        {
            if (!(this._security instanceof MutableList))
            {
                this._security = this._security.toList();
            }
            ((MutableList)this._security).add(val);
        }
        else
        {
            this._security = (val == null ? Lists.mutable.empty() : Lists.mutable.with(val));
        }
        return this;
    }

    private Root_meta_external_store_service_metamodel_Service _security(RichIterable val, boolean add)
    {
        if (add)
        {
            if (!(this._security instanceof MutableList))
            {
                this._security = this._security.toList();
            }
            ((MutableList)this._security).addAllIterable(val);
        }
        else
        {
            this._security = val;
        }
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _security(RichIterable val)
    {
        return this._security(val, false);
    }

    public Root_meta_external_store_service_metamodel_Service _securityAdd(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_SecuritySchemeRequirement val)
    {
        return this._security(Lists.immutable.with(val), true);
    }

    public Root_meta_external_store_service_metamodel_Service _securityAddAll(RichIterable val)
    {
        return this._security(val, true);
    }

    public Root_meta_external_store_service_metamodel_Service _securityRemove()
    {
        this._security = Lists.mutable.empty();
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _securityRemove(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_SecuritySchemeRequirement val)
    {
        if (!(this._security instanceof MutableList))
        {
            this._security = this._security.toList();
        }
        ((MutableList)this._security).remove(val);
        return this;
    }


    public void _reverse_security(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_SecuritySchemeRequirement val)
    {
        if (!(this._security instanceof MutableList))
        {
            this._security = this._security.toList();
        }
        ((MutableList)this._security).add(val);
    }

    public void _sever_reverse_security(org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_SecuritySchemeRequirement val)
    {
        if (!(this._security instanceof MutableList))
        {
            this._security = this._security.toList();
        }
        ((MutableList)this._security).remove(val);
    }

    public RichIterable _security()
    {
        return this._elementOverride() == null || !GetterOverrideExecutor.class.isInstance(this._elementOverride()) ? this._security : (RichIterable)((GetterOverrideExecutor)this._elementOverride()).executeToMany(this, "Root::meta::external::store::service::metamodel::Service", "security");
    }

    public Root_meta_external_store_service_metamodel_Service _classifierGenericType(org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.generics.GenericType val)
    {
        this._classifierGenericType = val;
        return this;
    }

    public Root_meta_external_store_service_metamodel_Service _classifierGenericType(RichIterable val)
    {
        return _classifierGenericType(val.getFirst());
    }

    public Root_meta_external_store_service_metamodel_Service _classifierGenericTypeRemove()
    {
        this._classifierGenericType = null;
        return this;
    }


    public java.lang.String resolveFullPathRecursively(final ExecutionSupport es)
    {
        return ((java.lang.String)(platform_pure_grammar_functions_collection_size_isEmpty.Root_meta_pure_functions_collection_isEmpty_Any_$0_1$__Boolean_1_(Root_meta_external_store_service_metamodel_Service_Impl.this._parent(),es)?Root_meta_external_store_service_metamodel_Service_Impl.this._path():platform_pure_grammar_functions_string_operation_plus.Root_meta_pure_functions_string_plus_String_MANY__String_1_(CompiledSupport.toPureCollection(Lists.mutable.with(CompiledSupport.toOne(Root_meta_external_store_service_metamodel_Service_Impl.this._parent(), new org.finos.legend.pure.m4.coreinstance.SourceInformation("/core_servicestore/metamodel/serviceStore.pure", -1, -1, 41, 25, -1, -1)).resolveFullPathRecursively(es),Root_meta_external_store_service_metamodel_Service_Impl.this._path())),es)));
    }


    public Root_meta_external_store_service_metamodel_Service copy()
    {
        return new Root_meta_external_store_service_metamodel_Service_Impl(this);
    }
    public Root_meta_external_store_service_metamodel_Service_Impl(Root_meta_external_store_service_metamodel_Service src)
    {
        this("Anonymous_NoCounter");
        this.classifier = ((Root_meta_external_store_service_metamodel_Service_Impl)src).classifier;
        this._response = (org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ComplexTypeReference)((Root_meta_external_store_service_metamodel_Service_Impl)src)._response;
        this._id = (java.lang.String)((Root_meta_external_store_service_metamodel_Service_Impl)src)._id;
        this._requestBody = (org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_TypeReference)((Root_meta_external_store_service_metamodel_Service_Impl)src)._requestBody;
        this._elementOverride = (org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.ElementOverride)((Root_meta_external_store_service_metamodel_Service_Impl)src)._elementOverride;
        this._owner = (org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ServiceStore)((Root_meta_external_store_service_metamodel_Service_Impl)src)._owner;
        this._path = (java.lang.String)((Root_meta_external_store_service_metamodel_Service_Impl)src)._path;
        this._parent = (org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ServiceGroup)((Root_meta_external_store_service_metamodel_Service_Impl)src)._parent;
        this._method = (org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.Enum)((Root_meta_external_store_service_metamodel_Service_Impl)src)._method;
        this._parameters = Lists.mutable.ofAll(((Root_meta_external_store_service_metamodel_Service_Impl)src)._parameters);
        this._security = Lists.mutable.ofAll(((Root_meta_external_store_service_metamodel_Service_Impl)src)._security);
        this._classifierGenericType = (org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.generics.GenericType)((Root_meta_external_store_service_metamodel_Service_Impl)src)._classifierGenericType;
    }
    @Override
    public String getFullSystemPath()
    {
         return tempFullTypeId;
    }
    public Root_meta_external_store_service_metamodel_Service_Impl _validate(boolean goDeep, org.finos.legend.pure.m4.coreinstance.SourceInformation sourceInformation, final ExecutionSupport es)
    {
        if (!this.hasCompileState(CompiledSupport.CONSTRAINTS_VALIDATED))
        {
            if (!((Boolean) core_servicestore_metamodel_serviceStore.__functions.get("meta_external_store_service_metamodel_Service$3").execute(Lists.mutable.with(this),es)))
            {
                throw new org.finos.legend.pure.m3.exception.PureExecutionException(sourceInformation, "Constraint :[supportedMethodTypes] violated in the Class Service, Message: " + (String) core_servicestore_metamodel_serviceStore.__functions.get("meta_external_store_service_metamodel_Service$2").execute(Lists.mutable.with(this),es));
            }
            this.addCompileState(CompiledSupport.CONSTRAINTS_VALIDATED);
            if (goDeep)
            {
                if (this._response() != null){this._response()._validate(goDeep, sourceInformation, es);}
                if (this._requestBody() != null){this._requestBody()._validate(goDeep, sourceInformation, es);}
                if (this._owner() != null){this._owner()._validate(goDeep, sourceInformation, es);}
                if (this._parent() != null){this._parent()._validate(goDeep, sourceInformation, es);}
                for (org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_ServiceParameter o : this._parameters())
                {
                    o._validate(goDeep, sourceInformation, es);
                }
                for (org.finos.legend.pure.generated.Root_meta_external_store_service_metamodel_SecuritySchemeRequirement o : this._security())
                {
                    o._validate(goDeep, sourceInformation, es);
                }
            }
        }
        return this;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy