package com.ibm.streamsx.topology.generator.operator; public interface OpProperties { /** * Programming model used to create the operator. */ String MODEL = "model"; /** * Language for the operator within its {@link #MODEL}. */ String LANGUAGE = "language"; String MODEL_FUNCTIONAL = "functional"; String MODEL_SPL = "spl"; String LANGUAGE_JAVA = "java"; String LANGUAGE_CPP = "cpp"; String LANGUAGE_PYTHON = "python"; String LANGUAGE_SPL = "spl"; /** * JSON attribute for operator configuration. */ String CONFIG = "config"; /** * Attribute for isolation region identifier. * A region that is on either side of an isolate * has a unique isolate region identifier. */ String PLACEMENT_ISOLATE_REGION_ID = "isolateRegion"; /** * Attribute for an explicit colocation identifier. * * An explicit colocate identifier is an instruction * from the application that it wants two (or more) operators * to be isolated. */ String PLACEMENT_EXPLICIT_COLOCATE_ID = "explicitColocate"; /** * Attribute for derived colocation key. * * Selected from one of the tags in the placement. * Note at code generation the actual value to * use must be looked up from the map object * in the graph config. * */ String PLACEMENT_COLOCATE_KEY = "colocateIdKey"; /** * Attribute for low latency region identifier. * * A low latency region has a unique isolate region identifier. */ String PLACEMENT_LOW_LATENCY_REGION_ID = "lowLatencyRegion"; /** * Attribute for an resource tags, a list of tags. */ String PLACEMENT_RESOURCE_TAGS = "resourceTags"; /** * Attribute for placement of the operator, a JSON object. * Can contain: * PLACEMENT_ISOLATE_REGION_ID * PLACEMENT_EXPLICIT_COLOCATE_ID * PLACEMENT_LOW_LATENCY_REGION_ID * PLACEMENT_RESOURCE_TAGS * * Stored within {@link OpProperties#CONFIG}. */ String PLACEMENT = "placement"; }