@@ 1996-2077 (lines=82) @@ | ||
1993 | __repr__ = __str__ |
|
1994 | ||
1995 | ||
1996 | class RegisteredServer(FrozenClass): |
|
1997 | ''' |
|
1998 | The information required to register a server with a discovery server. |
|
1999 | ||
2000 | :ivar ServerUri: |
|
2001 | :vartype ServerUri: String |
|
2002 | :ivar ProductUri: |
|
2003 | :vartype ProductUri: String |
|
2004 | :ivar ServerNames: |
|
2005 | :vartype ServerNames: LocalizedText |
|
2006 | :ivar ServerType: |
|
2007 | :vartype ServerType: ApplicationType |
|
2008 | :ivar GatewayServerUri: |
|
2009 | :vartype GatewayServerUri: String |
|
2010 | :ivar DiscoveryUrls: |
|
2011 | :vartype DiscoveryUrls: String |
|
2012 | :ivar SemaphoreFilePath: |
|
2013 | :vartype SemaphoreFilePath: String |
|
2014 | :ivar IsOnline: |
|
2015 | :vartype IsOnline: Boolean |
|
2016 | ''' |
|
2017 | def __init__(self, binary=None): |
|
2018 | if binary is not None: |
|
2019 | self._binary_init(binary) |
|
2020 | self._freeze = True |
|
2021 | return |
|
2022 | self.ServerUri = '' |
|
2023 | self.ProductUri = '' |
|
2024 | self.ServerNames = [] |
|
2025 | self.ServerType = ApplicationType(0) |
|
2026 | self.GatewayServerUri = '' |
|
2027 | self.DiscoveryUrls = [] |
|
2028 | self.SemaphoreFilePath = '' |
|
2029 | self.IsOnline = True |
|
2030 | self._freeze = True |
|
2031 | ||
2032 | def to_binary(self): |
|
2033 | packet = [] |
|
2034 | packet.append(pack_string(self.ServerUri)) |
|
2035 | packet.append(pack_string(self.ProductUri)) |
|
2036 | packet.append(uatype_Int32.pack(len(self.ServerNames))) |
|
2037 | for fieldname in self.ServerNames: |
|
2038 | packet.append(fieldname.to_binary()) |
|
2039 | packet.append(uatype_UInt32.pack(self.ServerType.value)) |
|
2040 | packet.append(pack_string(self.GatewayServerUri)) |
|
2041 | packet.append(uatype_Int32.pack(len(self.DiscoveryUrls))) |
|
2042 | for fieldname in self.DiscoveryUrls: |
|
2043 | packet.append(pack_string(fieldname)) |
|
2044 | packet.append(pack_string(self.SemaphoreFilePath)) |
|
2045 | packet.append(uatype_Boolean.pack(self.IsOnline)) |
|
2046 | return b''.join(packet) |
|
2047 | ||
2048 | @staticmethod |
|
2049 | def from_binary(data): |
|
2050 | return RegisteredServer(data) |
|
2051 | ||
2052 | def _binary_init(self, data): |
|
2053 | self.ServerUri = unpack_string(data) |
|
2054 | self.ProductUri = unpack_string(data) |
|
2055 | length = uatype_Int32.unpack(data.read(4))[0] |
|
2056 | array = [] |
|
2057 | if length != -1: |
|
2058 | for _ in range(0, length): |
|
2059 | array.append(LocalizedText.from_binary(data)) |
|
2060 | self.ServerNames = array |
|
2061 | self.ServerType = ApplicationType(uatype_UInt32.unpack(data.read(4))[0]) |
|
2062 | self.GatewayServerUri = unpack_string(data) |
|
2063 | self.DiscoveryUrls = unpack_uatype_array('String', data) |
|
2064 | self.SemaphoreFilePath = unpack_string(data) |
|
2065 | self.IsOnline = uatype_Boolean.unpack(data.read(1))[0] |
|
2066 | ||
2067 | def __str__(self): |
|
2068 | return 'RegisteredServer(' + 'ServerUri:' + str(self.ServerUri) + ', ' + \ |
|
2069 | 'ProductUri:' + str(self.ProductUri) + ', ' + \ |
|
2070 | 'ServerNames:' + str(self.ServerNames) + ', ' + \ |
|
2071 | 'ServerType:' + str(self.ServerType) + ', ' + \ |
|
2072 | 'GatewayServerUri:' + str(self.GatewayServerUri) + ', ' + \ |
|
2073 | 'DiscoveryUrls:' + str(self.DiscoveryUrls) + ', ' + \ |
|
2074 | 'SemaphoreFilePath:' + str(self.SemaphoreFilePath) + ', ' + \ |
|
2075 | 'IsOnline:' + str(self.IsOnline) + ')' |
|
2076 | ||
2077 | __repr__ = __str__ |
|
2078 | ||
2079 | ||
2080 | class RegisterServerRequest(FrozenClass): |
|
@@ 1770-1849 (lines=80) @@ | ||
1767 | __repr__ = __str__ |
|
1768 | ||
1769 | ||
1770 | class EndpointDescription(FrozenClass): |
|
1771 | ''' |
|
1772 | The description of a endpoint that can be used to access a server. |
|
1773 | ||
1774 | :ivar EndpointUrl: |
|
1775 | :vartype EndpointUrl: String |
|
1776 | :ivar Server: |
|
1777 | :vartype Server: ApplicationDescription |
|
1778 | :ivar ServerCertificate: |
|
1779 | :vartype ServerCertificate: ByteString |
|
1780 | :ivar SecurityMode: |
|
1781 | :vartype SecurityMode: MessageSecurityMode |
|
1782 | :ivar SecurityPolicyUri: |
|
1783 | :vartype SecurityPolicyUri: String |
|
1784 | :ivar UserIdentityTokens: |
|
1785 | :vartype UserIdentityTokens: UserTokenPolicy |
|
1786 | :ivar TransportProfileUri: |
|
1787 | :vartype TransportProfileUri: String |
|
1788 | :ivar SecurityLevel: |
|
1789 | :vartype SecurityLevel: Byte |
|
1790 | ''' |
|
1791 | def __init__(self, binary=None): |
|
1792 | if binary is not None: |
|
1793 | self._binary_init(binary) |
|
1794 | self._freeze = True |
|
1795 | return |
|
1796 | self.EndpointUrl = '' |
|
1797 | self.Server = ApplicationDescription() |
|
1798 | self.ServerCertificate = b'' |
|
1799 | self.SecurityMode = MessageSecurityMode(0) |
|
1800 | self.SecurityPolicyUri = '' |
|
1801 | self.UserIdentityTokens = [] |
|
1802 | self.TransportProfileUri = '' |
|
1803 | self.SecurityLevel = 0 |
|
1804 | self._freeze = True |
|
1805 | ||
1806 | def to_binary(self): |
|
1807 | packet = [] |
|
1808 | packet.append(pack_string(self.EndpointUrl)) |
|
1809 | packet.append(self.Server.to_binary()) |
|
1810 | packet.append(pack_bytes(self.ServerCertificate)) |
|
1811 | packet.append(uatype_UInt32.pack(self.SecurityMode.value)) |
|
1812 | packet.append(pack_string(self.SecurityPolicyUri)) |
|
1813 | packet.append(uatype_Int32.pack(len(self.UserIdentityTokens))) |
|
1814 | for fieldname in self.UserIdentityTokens: |
|
1815 | packet.append(fieldname.to_binary()) |
|
1816 | packet.append(pack_string(self.TransportProfileUri)) |
|
1817 | packet.append(uatype_Byte.pack(self.SecurityLevel)) |
|
1818 | return b''.join(packet) |
|
1819 | ||
1820 | @staticmethod |
|
1821 | def from_binary(data): |
|
1822 | return EndpointDescription(data) |
|
1823 | ||
1824 | def _binary_init(self, data): |
|
1825 | self.EndpointUrl = unpack_string(data) |
|
1826 | self.Server = ApplicationDescription.from_binary(data) |
|
1827 | self.ServerCertificate = unpack_bytes(data) |
|
1828 | self.SecurityMode = MessageSecurityMode(uatype_UInt32.unpack(data.read(4))[0]) |
|
1829 | self.SecurityPolicyUri = unpack_string(data) |
|
1830 | length = uatype_Int32.unpack(data.read(4))[0] |
|
1831 | array = [] |
|
1832 | if length != -1: |
|
1833 | for _ in range(0, length): |
|
1834 | array.append(UserTokenPolicy.from_binary(data)) |
|
1835 | self.UserIdentityTokens = array |
|
1836 | self.TransportProfileUri = unpack_string(data) |
|
1837 | self.SecurityLevel = uatype_Byte.unpack(data.read(1))[0] |
|
1838 | ||
1839 | def __str__(self): |
|
1840 | return 'EndpointDescription(' + 'EndpointUrl:' + str(self.EndpointUrl) + ', ' + \ |
|
1841 | 'Server:' + str(self.Server) + ', ' + \ |
|
1842 | 'ServerCertificate:' + str(self.ServerCertificate) + ', ' + \ |
|
1843 | 'SecurityMode:' + str(self.SecurityMode) + ', ' + \ |
|
1844 | 'SecurityPolicyUri:' + str(self.SecurityPolicyUri) + ', ' + \ |
|
1845 | 'UserIdentityTokens:' + str(self.UserIdentityTokens) + ', ' + \ |
|
1846 | 'TransportProfileUri:' + str(self.TransportProfileUri) + ', ' + \ |
|
1847 | 'SecurityLevel:' + str(self.SecurityLevel) + ')' |
|
1848 | ||
1849 | __repr__ = __str__ |
|
1850 | ||
1851 | ||
1852 | class GetEndpointsParameters(FrozenClass): |