/// <summary> /// Constructs TcpOptions from uri and resources. /// </summary> /// <param name="uri"></param> /// <param name="resources"></param> public TcpOptions(URL uri, Resources resources) { autoFlush = uri.GetBooleanTerm(AUTO_FLUSH, false); bufferSize = CheckBufferSize(uri.GetIntegerTerm(BUFFER_SIZE, 0)); keepAlive = uri.GetBooleanTerm(KEEP_ALIVE, false); lingerTime = CheckLingerTime(uri.GetIntegerTerm(LINGER_TIME, 30)); noDelay = uri.GetBooleanTerm(NO_DELAY, true); reconnectDelay = CheckReconnectDelay(uri.GetIntegerTerm(RECONNECT_DELAY, 0)); trafficClass = CheckTrafficClass(uri.GetIntegerTerm(TRAFFIC_CLASS, 0)); }
public UdpListener(URL uri, Resources resources) : this(TranslateHost(uri.Host), uri.Port != null ? uri.Port.Value : 0, (bool)uri.GetBooleanTerm(REUSE_PORT, false), 0, (int)uri.GetIntegerTerm(QUEUE_SIZE, 15)) { // nothing else. }
public void TestQueryTerms() { String testUrl = "tcp://*****:*****@127.0.0.1:4001/cuae"; URL url = new URL(testUrl); Assert.IsFalse(url.HasTerms()); testUrl = "tcp://*****:*****@127.0.0.1:4001/cuae?term1=500"; url = new URL(testUrl); Assert.IsTrue(url.HasTerms()); Assert.IsTrue(url.HasTerm("term1")); Assert.IsTrue(url.HasTerm("term1", "500")); Assert.IsTrue(url.HasTerm("term1", 500)); Assert.IsFalse(url.HasTerm("term1", "1000")); Assert.IsFalse(url.HasTerm("term1", 1000)); Assert.IsFalse(url.HasMultipleValues("term1")); Assert.AreEqual("500", url.GetTerm("term1")); Assert.AreEqual(500, url.GetIntegerTerm("term1")); Assert.AreEqual("500", url.GetTerm("term1", "x")); Assert.AreEqual(500, url.GetIntegerTerm("term1", 2)); Assert.IsFalse(url.HasTerm("term2")); Assert.IsFalse(url.HasTerm("term2", "500")); Assert.IsFalse(url.HasTerm("term2", 500)); Assert.IsNull(url.GetTerm("term2")); Assert.IsNull(url.GetIntegerTerm("term2")); Assert.AreEqual("x", url.GetTerm("term2", "x")); Assert.AreEqual(2, url.GetIntegerTerm("term2", 2)); // multiple values of the same term url.AddTerm("term1", 500.5); Assert.IsTrue(url.HasMultipleValues("term1")); Assert.IsTrue(url.HasTerm("term1")); Assert.IsTrue(url.HasTerm("term1", "500")); Assert.IsTrue(url.HasTerm("term1", 500)); Assert.IsTrue(url.HasTerm("term1", "500.5")); Assert.IsTrue(url.HasTerm("term1", 500.5)); try { url.GetTerm("term1"); Assert.Fail("Exception wasn't thrown..."); } catch (Exception) { // ignore exception } string[] t = url.GetTerms("term1"); Assert.AreEqual(2, t.Length); Assert.AreEqual("500", t[0]); Assert.AreEqual("500.5", t[1]); // add another term => multiple terms url.AddTerm("term2", "value"); Assert.IsFalse(url.HasMultipleValues("term2")); Assert.IsTrue(url.HasTerm("term2")); Assert.IsTrue(url.HasTerm("term2", "value")); Assert.AreEqual("value", url.GetTerm("term2")); t = url.GetTermNames(); Assert.AreEqual(2, t.Length); Assert.AreEqual("term1", t[0]); Assert.AreEqual("term2", t[1]); // Console.WriteLine( url.ToString() ); // remove term Assert.IsFalse(url.RemoveTerm("term3")); Assert.IsTrue(url.RemoveTerm("term2")); Assert.IsFalse(url.HasTerm("term2")); t = url.GetTermNames(); Assert.AreEqual(1, t.Length); Assert.AreEqual("term1", t[0]); // remove one value from a list of values for a term Assert.IsTrue(url.RemoveTerm("term1", "500.5")); Assert.IsFalse(url.HasMultipleValues("term1")); Assert.AreEqual("500", url.GetTerm("term1")); // clear terms url.ClearTerms(); Assert.IsFalse(url.HasTerms()); Assert.AreEqual(0, url.GetTermNames().Length); Assert.AreEqual("tcp://*****:*****@127.0.0.1:4001/cuae", url.ToString()); }
public Packetizer(TransportData transport, URL uri, Resources resources) : this(transport, (int)uri.GetIntegerTerm(MAX_PKT_SIZE_TERM, DEFAULT_MAX_PKT_SIZE)) { // nothing to do. }
public TcpListener(URL uri, Resources resources) : this((int)uri.GetIntegerTerm(BACKLOG, 0), TranslateHost(uri.Host), uri.Port != null ? uri.Port.Value : 0, 0) { // nothing else. }