source: geniuswebcore/geniusweb/references/PartyWithParameters.py@ 111

Last change on this file since 111 was 111, checked in by ruud, 2 months ago

Modifications for automatic java to python conversion. Overloaded methods now have different names.

File size: 2.2 KB
Line 
1# Generated from java by J2P
2from __future__ import annotations
3from geniusweb.references.Parameters import Parameters
4from geniusweb.references.PartyRef import PartyRef
5from tudelft.utilities.tools.safehash import safehash
6from typing import Any
7from typing import Optional
8from typing import cast
9
10
11class PartyWithParameters:
12 '''
13 Container holding a partyref with parameters
14
15 '''
16
17 def __init__(self, partyref:PartyRef, parameters:Parameters):
18 '''
19
20 @param partyref a reference to a party
21 @param parameters the parameters the init parameters to use
22
23 '''
24 self.__partyref:PartyRef = None
25 self.__parameters:Parameters = None
26 super().__init__()
27 self.__partyref=partyref
28 self.__parameters=parameters
29
30 def getPartyRef(self) -> PartyRef:
31 '''
32
33 @return the party reference
34
35 '''
36 return self.__partyref
37
38 def getParameters(self) -> Parameters:
39 '''
40
41 @return the parameters to initialize the party with
42
43 '''
44 return self.__parameters
45
46 #Override
47 def __repr__(self) -> str:
48 if self.__parameters.isEmpty():
49 return str(self.__partyref)
50 return str(self.__partyref) + str(self.__parameters)
51
52 #Override
53 def __hash__(self) -> int:
54 prime:int = 31
55 result:int = 1
56 result=((prime * result) + (0 if ((self.__parameters is None)) else safehash(self.__parameters)))
57 result=((prime * result) + (0 if ((self.__partyref is None)) else safehash(self.__partyref)))
58 return result
59
60 def With(self,parameters2:Parameters) -> PartyWithParameters:
61 '''
62
63 @param parameters2 the additional parameters
64 @return this party but with the given parameters added to our parameters
65
66 '''
67 return PartyWithParameters(self.__partyref,self.__parameters.With(parameters2))
68
69 #Override
70 def __eq__(self,obj:Optional[Any]) -> bool:
71 if (self is obj):
72 return True
73 if (obj is None):
74 return False
75 if (type(self) is not type(obj)):
76 return False
77 other:Optional[PartyWithParameters] = cast(PartyWithParameters,obj)
78 if (self.__parameters is None):
79 if (other.__parameters is not None):
80 return False
81 else:
82 if not(self.__parameters == other.__parameters):
83 return False
84 if (self.__partyref is None):
85 if (other.__partyref is not None):
86 return False
87 else:
88 if not(self.__partyref == other.__partyref):
89 return False
90 return True
Note: See TracBrowser for help on using the repository browser.