aspen_pysys.base.factory
class
HysysObjFactory(abc.ABC):
26class HysysObjFactory(ABC): 27 """Interface for HYSYS object factory methods.""" 28 29 @staticmethod 30 @abstractmethod 31 def get_obj(connection: HysysCase, obj: HysysObjReadable) -> HysysObject: 32 """Get an object. 33 34 Args: 35 connection (HysysCase): Simulation case 36 obj (HysysObjReadable): Raw HYSYS object 37 38 Returns: 39 HysysObject: Object 40 """ 41 42 @staticmethod 43 @abstractmethod 44 def get_named_obj(connection: HysysCase, obj: HysysObjReadable) -> HysysNamedObject: 45 """Get a named object. 46 47 Args: 48 connection (HysysCase): Simulation case 49 obj (HysysObjReadable): Raw HYSYS object 50 51 Returns: 52 HysysNamedObject: Named object 53 """ 54 55 @staticmethod 56 @abstractmethod 57 def get_const[T]( 58 attr: str, 59 parent: HysysObject, 60 typ: type[T], 61 ) -> HysysConstant[T]: 62 """Get a constant object. 63 64 Args: 65 attr (str): Attribute name 66 parent (HysysObject): Parent of constant 67 typ (type[T]): Type of the HYSYS constant for data validation 68 69 Returns: 70 HysysConstant[T]: Constant object 71 """ 72 73 @staticmethod 74 @abstractmethod 75 def get_func( 76 attr: str, 77 parent: HysysObject, 78 ) -> HysysFunction: 79 """Get a function. 80 81 Args: 82 attr (str): Attribute name 83 parent (HysysObject): Parent of function 84 85 Returns: 86 HysysFunction: Function 87 """ 88 89 @staticmethod 90 @abstractmethod 91 def get_array( 92 attr: str, 93 parent: HysysObject, 94 count: int | None, 95 ) -> HysysArray: 96 """Get an array. 97 98 Args: 99 attr (str): Attribute name 100 parent (HysysObject): Parent of array 101 count (int): Length of array 102 103 Returns: 104 HysysArray: Array 105 """ 106 107 @staticmethod 108 @abstractmethod 109 def get_dict[T: HysysObject]( 110 attr: str, 111 parent: HysysObject, 112 mapper: Callable[[HysysObject], T] = lambda obj: obj, 113 ) -> HysysDictionary[T]: 114 """Get a dictionary. 115 116 Args: 117 attr (str): Attribute name 118 parent (HysysObject): Parent of dictionaruy 119 mapper (Callable[[HysysObject], T], optional): Mapper function to map objects to specific types. Defaults to lambda obj: obj. 120 121 Returns: 122 HysysDictionary[T]: Dictionary 123 """ # noqa: E501
Interface for HYSYS object factory methods.
@staticmethod
@abstractmethod
def
get_obj( connection: aspen_pysys.case.hysys_case.HysysCase, obj: HysysObjReadable) -> aspen_pysys.base.HysysObject:
29 @staticmethod 30 @abstractmethod 31 def get_obj(connection: HysysCase, obj: HysysObjReadable) -> HysysObject: 32 """Get an object. 33 34 Args: 35 connection (HysysCase): Simulation case 36 obj (HysysObjReadable): Raw HYSYS object 37 38 Returns: 39 HysysObject: Object 40 """
Get an object.
Arguments:
- connection (HysysCase): Simulation case
- obj (HysysObjReadable): Raw HYSYS object
Returns:
HysysObject: Object
@staticmethod
@abstractmethod
def
get_named_obj( connection: aspen_pysys.case.hysys_case.HysysCase, obj: HysysObjReadable) -> aspen_pysys.base.HysysNamedObject:
42 @staticmethod 43 @abstractmethod 44 def get_named_obj(connection: HysysCase, obj: HysysObjReadable) -> HysysNamedObject: 45 """Get a named object. 46 47 Args: 48 connection (HysysCase): Simulation case 49 obj (HysysObjReadable): Raw HYSYS object 50 51 Returns: 52 HysysNamedObject: Named object 53 """
Get a named object.
Arguments:
- connection (HysysCase): Simulation case
- obj (HysysObjReadable): Raw HYSYS object
Returns:
HysysNamedObject: Named object
@staticmethod
@abstractmethod
def
get_const( attr: str, parent: aspen_pysys.base.HysysObject, typ: 'type[T]') -> 'HysysConstant[T]':
55 @staticmethod 56 @abstractmethod 57 def get_const[T]( 58 attr: str, 59 parent: HysysObject, 60 typ: type[T], 61 ) -> HysysConstant[T]: 62 """Get a constant object. 63 64 Args: 65 attr (str): Attribute name 66 parent (HysysObject): Parent of constant 67 typ (type[T]): Type of the HYSYS constant for data validation 68 69 Returns: 70 HysysConstant[T]: Constant object 71 """
Get a constant object.
Arguments:
- attr (str): Attribute name
- parent (HysysObject): Parent of constant
- typ (type[T]): Type of the HYSYS constant for data validation
Returns:
HysysConstant[T]: Constant object
@staticmethod
@abstractmethod
def
get_func( attr: str, parent: aspen_pysys.base.HysysObject) -> aspen_pysys.base.primitive.HysysFunction:
73 @staticmethod 74 @abstractmethod 75 def get_func( 76 attr: str, 77 parent: HysysObject, 78 ) -> HysysFunction: 79 """Get a function. 80 81 Args: 82 attr (str): Attribute name 83 parent (HysysObject): Parent of function 84 85 Returns: 86 HysysFunction: Function 87 """
Get a function.
Arguments:
- attr (str): Attribute name
- parent (HysysObject): Parent of function
Returns:
HysysFunction: Function
@staticmethod
@abstractmethod
def
get_array( attr: str, parent: aspen_pysys.base.HysysObject, count: int | None) -> aspen_pysys.base.primitive.HysysArray:
89 @staticmethod 90 @abstractmethod 91 def get_array( 92 attr: str, 93 parent: HysysObject, 94 count: int | None, 95 ) -> HysysArray: 96 """Get an array. 97 98 Args: 99 attr (str): Attribute name 100 parent (HysysObject): Parent of array 101 count (int): Length of array 102 103 Returns: 104 HysysArray: Array 105 """
Get an array.
Arguments:
- attr (str): Attribute name
- parent (HysysObject): Parent of array
- count (int): Length of array
Returns:
HysysArray: Array
@staticmethod
@abstractmethod
def
get_dict( attr: str, parent: aspen_pysys.base.HysysObject, mapper: 'Callable[[HysysObject], T]' = <function HysysObjFactory.<lambda>>) -> 'HysysDictionary[T]':
107 @staticmethod 108 @abstractmethod 109 def get_dict[T: HysysObject]( 110 attr: str, 111 parent: HysysObject, 112 mapper: Callable[[HysysObject], T] = lambda obj: obj, 113 ) -> HysysDictionary[T]: 114 """Get a dictionary. 115 116 Args: 117 attr (str): Attribute name 118 parent (HysysObject): Parent of dictionaruy 119 mapper (Callable[[HysysObject], T], optional): Mapper function to map objects to specific types. Defaults to lambda obj: obj. 120 121 Returns: 122 HysysDictionary[T]: Dictionary 123 """ # noqa: E501
Get a dictionary.
Arguments:
- attr (str): Attribute name
- parent (HysysObject): Parent of dictionaruy
- mapper (Callable[[HysysObject], T], optional): Mapper function to map objects to specific types. Defaults to lambda obj: obj.
Returns:
HysysDictionary[T]: Dictionary
29class HysysObjManager(HysysObjFactory): 30 """Helper class that constructs the right type of HysysObject.""" 31 32 @override 33 @staticmethod 34 def get_obj(connection: HysysCase, obj: HysysObjReadable) -> HysysObject: 35 return HysysObject(connection, obj) 36 37 @override 38 @staticmethod 39 def get_named_obj(connection: HysysCase, obj: HysysObjReadable) -> HysysNamedObject: 40 return HysysNamedObject(connection, obj) 41 42 @override 43 @staticmethod 44 def get_const[T]( 45 attr: str, 46 parent: HysysObject, 47 typ: type[T], 48 ) -> HysysConstant[T]: 49 return HysysConstant(attr, parent, typ) 50 51 @override 52 @staticmethod 53 def get_func( 54 attr: str, 55 parent: HysysObject, 56 ) -> HysysFunction: 57 return HysysFunction(attr, parent) 58 59 @override 60 @staticmethod 61 def get_array( 62 attr: str, 63 parent: HysysObject, 64 count: int | None, 65 ) -> HysysArray: 66 return HysysArray(attr, parent, count) 67 68 @override 69 @staticmethod 70 def get_dict[T: HysysObject]( 71 attr: str, 72 parent: HysysObject, 73 mapper: Callable[[HysysObject], T] = lambda obj: obj, 74 ) -> HysysDictionary[T]: 75 return HysysDictionary[T](attr, parent, mapper)
Helper class that constructs the right type of HysysObject.
@override
@staticmethod
def
get_obj( connection: aspen_pysys.case.hysys_case.HysysCase, obj: HysysObjReadable) -> aspen_pysys.base.HysysObject:
32 @override 33 @staticmethod 34 def get_obj(connection: HysysCase, obj: HysysObjReadable) -> HysysObject: 35 return HysysObject(connection, obj)
Get an object.
Arguments:
- connection (HysysCase): Simulation case
- obj (HysysObjReadable): Raw HYSYS object
Returns:
HysysObject: Object
@override
@staticmethod
def
get_named_obj( connection: aspen_pysys.case.hysys_case.HysysCase, obj: HysysObjReadable) -> aspen_pysys.base.HysysNamedObject:
37 @override 38 @staticmethod 39 def get_named_obj(connection: HysysCase, obj: HysysObjReadable) -> HysysNamedObject: 40 return HysysNamedObject(connection, obj)
Get a named object.
Arguments:
- connection (HysysCase): Simulation case
- obj (HysysObjReadable): Raw HYSYS object
Returns:
HysysNamedObject: Named object
@override
@staticmethod
def
get_const( attr: str, parent: aspen_pysys.base.HysysObject, typ: 'type[T]') -> 'HysysConstant[T]':
42 @override 43 @staticmethod 44 def get_const[T]( 45 attr: str, 46 parent: HysysObject, 47 typ: type[T], 48 ) -> HysysConstant[T]: 49 return HysysConstant(attr, parent, typ)
Get a constant object.
Arguments:
- attr (str): Attribute name
- parent (HysysObject): Parent of constant
- typ (type[T]): Type of the HYSYS constant for data validation
Returns:
HysysConstant[T]: Constant object
@override
@staticmethod
def
get_func( attr: str, parent: aspen_pysys.base.HysysObject) -> aspen_pysys.base.primitive.HysysFunction:
51 @override 52 @staticmethod 53 def get_func( 54 attr: str, 55 parent: HysysObject, 56 ) -> HysysFunction: 57 return HysysFunction(attr, parent)
Get a function.
Arguments:
- attr (str): Attribute name
- parent (HysysObject): Parent of function
Returns:
HysysFunction: Function
@override
@staticmethod
def
get_array( attr: str, parent: aspen_pysys.base.HysysObject, count: int | None) -> aspen_pysys.base.primitive.HysysArray:
59 @override 60 @staticmethod 61 def get_array( 62 attr: str, 63 parent: HysysObject, 64 count: int | None, 65 ) -> HysysArray: 66 return HysysArray(attr, parent, count)
Get an array.
Arguments:
- attr (str): Attribute name
- parent (HysysObject): Parent of array
- count (int): Length of array
Returns:
HysysArray: Array
@override
@staticmethod
def
get_dict( attr: str, parent: aspen_pysys.base.HysysObject, mapper: 'Callable[[HysysObject], T]' = <function HysysObjManager.<lambda>>) -> 'HysysDictionary[T]':
68 @override 69 @staticmethod 70 def get_dict[T: HysysObject]( 71 attr: str, 72 parent: HysysObject, 73 mapper: Callable[[HysysObject], T] = lambda obj: obj, 74 ) -> HysysDictionary[T]: 75 return HysysDictionary[T](attr, parent, mapper)
Get a dictionary.
Arguments:
- attr (str): Attribute name
- parent (HysysObject): Parent of dictionaruy
- mapper (Callable[[HysysObject], T], optional): Mapper function to map objects to specific types. Defaults to lambda obj: obj.
Returns:
HysysDictionary[T]: Dictionary