public static bool TryFactory(string str, ProtocolKey fallbackProtoKey, out ObjectNamedKey objKey) { if (string.IsNullOrWhiteSpace(str)) { objKey = default(ObjectNamedKey); return(false); } var split = str.Split('.'); if (split.Length >= 2) { objKey = new ObjectNamedKey( new ProtocolKey(string.Join(".", split.For(0, split.Length - 1))), string.Join(".", split[split.Length - 1])); return(true); } else if (split.Length == 1) { objKey = new ObjectNamedKey( fallbackProtoKey, split[0]); return(true); } objKey = default(ObjectNamedKey); return(false); }
public ObjectNamedKey( ProtocolKey protocolKey, string name) { ProtocolKey = protocolKey; Name = name; }
public static ObjectNamedKey Factory(string str, ProtocolKey fallbackProtoKey) { if (!TryFactory(str, fallbackProtoKey, out var namedKey)) { throw new ArgumentException($"{str} cannot be converted to a name key."); } return(namedKey); }
public ObjectKey( ProtocolKey protocolKey, ushort msgID, ushort version) { ProtocolKey = protocolKey; MessageID = msgID; Version = version; }
public bool TryGetProtocol(ProtocolKey protocol, out ProtocolGeneration protoGen) { return(_protocols.TryGetValue(protocol, out protoGen)); }