Orion Platform Mixins

Copyright (C) 2023 Cadence Design Systems, Inc. (Cadence)

class orionplatform.mixins.CollectionPortsMixin

Mixin class for adding the default Collection Ports to a cube class.

It defines the following ports:

  • Input Collection Port intake

  • Output Collection Port success

  • Output Collection Port failure

Recommended usage is to also inherit from the ComputeCube class in floe to create a full fledged cube.

Python Example

from floe.api import ComputeCube
from orionplatform.mixins import CollectionPortsMixin
class CollectionCube(CollectionPortsMixin, ComputeCube):

    def process(self, collection, port):
        # Emit Collection
        self.success.emit(collection)
class orionplatform.mixins.RecordPortsMixin

Mixin class for adding the default Record Ports to a cube class.

It defines the following ports:

  • Input Port intake

  • Output Port success

  • Output Port failure

Recommended usage is to also inherit from the ComputeCube class in floe to create a full fledged cube.

Python Example

from floe.api import ComputeCube
from orionplatform.mixins import RecordPortsMixin
class RecordCube(RecordPortsMixin, ComputeCube):


    def process(self, rec, port):
        # Emit Record
        self.success.emit(rec)
class orionplatform.mixins.ShardPortsMixin

Mixin class for adding the default Shard Ports to a cube class.

It defines the following ports:

  • Input Shard Port intake

  • Output Shard Port success

  • Output Shard Port failure

Recommended usage is to also inherit from the ComputeCube class in floe to create a full fledged cube.

Python Example

from floe.api import ComputeCube
from orionplatform.mixins import ShardPortsMixin
class ShardCube(ShardPortsMixin, ComputeCube):

    def process(self, shard, port):
        # Emit Shard
        self.success.emit(shard)