-
Notifications
You must be signed in to change notification settings - Fork 14
domain
The domain
-module's most central class is the Shard enum, which contains several constants for the server, namely:
Field | Description |
---|---|
name | The platform name |
baseUrl | The base url for most services |
chatUrl | The url for the jabber server |
prodUrl | The url for the rtmp server |
loginQueue | The url for the login queue |
apiUrl | The url for the rest api |
spectatorUrl | The url for the spectator api |
isGarena | Whether this is a garena-run server or not |
A loose collection of helper methods which couldn't find a place anywhere else.
A bunch of constants that should be organized into com.riotgames at some point, but for which we didn't find the correct location yet (e.g. Map, LeagueTier, PlayerSide, QueueType and Season)
A port of the client classes to java, mostly DTOs returned by the RTMP Api
You may find yourself in a position where you need to serialize your own objects for transmission via RTMP, though hopefully you won't need to.
Usually, adding the @Serialization
annotation is all you need. It contains the following attributes, though all of them are optional
Attribute | Description | If Not Set |
---|---|---|
name | The fully qualified name for this class. | The class will be serialized as an anonymous object, and during deserialization, only an AnonymousAmfObject will be returned |
noncanonicalName | Names which are also accepted during deserialization | Only name will be accepted for deserialization |
dynamic | Sets the dynamic flag for this object, meaning that optional fields outside the trait definition may be serialized and deserialized | No attempt is made to mark the object as dynamic or read additional fields after the standard object body |
externalizable | The object does not follow the standard serialization and deserialization process. Objects that set this field should either implement Externalizable or set custom (de)serializers (see below) |
The object will be serialized and deserialized in the standard format |
deserializeOnly | The @Serialization annotation is ignored during serialization |
The @Serialization annotation is not ignored |
amf3Serializer, amf0Serializer, amf3Deserializer, amf0Deserializer | The (de)serializer for each protocol version. A new instance of this is created whenever an object of this type is (de)serialized | The standard object serializer/deserializer is used |
Other classes of interest might be:
-
@AmfType
- The type marker for this object (by default, a specific OBJECT marker is sent) -
@JsonSerialization
- The marked field is read as a string, and then parsed as JSON -
@NoSerialization
- The marked field is excluded from serialization and deserialization -
@SerializedName
- If the field name differs from the name the server expects, you can set the serialized name with this