示例#1
0
    def conditions(self, conditions):
        lst = validate_list(conditions, (ConditionTemplate, list, tuple))

        # make sure attribute can be a Condition
        # TODO: list.map(_.validate_scope(AttributeType.CONDITION)) all true

        self._conditions = list(map(BaseTemplate._homogenize_ranges, lst))
示例#2
0
 def process(self, process):
     from taurus.entity.object import ProcessRun
     from taurus.entity.link_by_uid import LinkByUID
     if self._process is not None and isinstance(self._process, ProcessRun):
         self._process._unset_ingredient(self)
     if process is None:
         self._process = None
     elif isinstance(process, ProcessRun):
         self._process = process
         if not isinstance(process.ingredients, ValidList):
             process._ingredients = validate_list(self, [IngredientRun, LinkByUID])
         else:
             process._ingredients.append(self)
     elif isinstance(process, LinkByUID):
         self._process = process
     else:
         raise TypeError("IngredientRun.process must be a ProcessRun or LinkByUID")
示例#3
0
 def material(self, value):
     from taurus.entity.object import MaterialRun
     from taurus.entity.link_by_uid import LinkByUID
     if self._material is not None and isinstance(self._material,
                                                  MaterialRun):
         self._material._unset_measurement(self)
     if value is None:
         self._material = value
     elif isinstance(value, MaterialRun):
         self._material = value
         if not isinstance(value.measurements, ValidList):
             value._measurements = validate_list(
                 self, [MeasurementRun, LinkByUID])
         else:
             value._measurements.append(self)
     elif isinstance(value, LinkByUID):
         self._material = value
     else:
         raise TypeError(
             "material must be a MaterialRun or LinkByUID: {}".format(
                 value))
示例#4
0
 def properties(self, properties):
     self._properties = validate_list(properties, Property)