/// <summary> /// 获取指定名称的Topic /// </summary> /// <param name="topicName">Name of the topic.</param> /// <returns>Topic.</returns> private Topic GetTopic(String topicName) { if (_topics.ContainsKey(topicName)) { return(_topics[topicName]); } // 创建消息主题 Topic topic = null; try { var topicRequest = new CreateTopicRequest { TopicName = topicName }; _client.DeleteTopic(topicName); topic = _client.CreateTopic(topicRequest); _topics.TryAdd(topicName, topic); } catch (Exception ex) { XTrace.WriteLine($"创建消息发送主题 {topicName} 失败。"); XTrace.WriteException(ex); } return(topic); }
public void SetUp() { client = new Aliyun.MNS.MNSClient(_accessKeyId, _secretAccessKey, _endpoint); client.CreateTopic("UTTopic"); try { client.DeleteTopic("UTTopic2"); } catch (Exception) { // do nothing } }
public void SetUp() { var config = Newtonsoft.Json.JsonConvert.DeserializeObject <ConfigModel>(File.ReadAllText(@"E:\MNS.json")); _accessKeyId = config.AccessKeyId; _secretAccessKey = config.AccessKey; _endpoint = config.EndPoint; client = new MNSClient(_accessKeyId, _secretAccessKey, _endpoint); client.CreateTopic("UTTopic"); try { client.DeleteTopic("UTTopic2"); } catch (Exception) { // do nothing } }
public void SetAttributesTest() { Topic topic = client.GetNativeTopic("UTTopic"); var resp = topic.GetAttributes(); var originalLoggingEnabled = resp.Attributes.LoggingEnabled; TopicAttributes qa = new TopicAttributes(); topic.SetAttributes(qa); resp = topic.GetAttributes(); Assert.AreEqual(originalLoggingEnabled, resp.Attributes.LoggingEnabled); qa = new TopicAttributes() { LoggingEnabled = false }; topic.SetAttributes(qa); resp = topic.GetAttributes(); Assert.AreEqual(false, resp.Attributes.LoggingEnabled); qa = new TopicAttributes(); topic.SetAttributes(qa); resp = topic.GetAttributes(); Assert.AreEqual(false, resp.Attributes.LoggingEnabled); qa = new TopicAttributes() { LoggingEnabled = true }; topic.SetAttributes(qa); resp = topic.GetAttributes(); Assert.AreEqual(true, resp.Attributes.LoggingEnabled); qa = new TopicAttributes(); topic.SetAttributes(qa); resp = topic.GetAttributes(); Assert.AreEqual(true, resp.Attributes.LoggingEnabled); qa = new TopicAttributes() { LoggingEnabled = false }; topic.SetAttributes(qa); resp = topic.GetAttributes(); Assert.AreEqual(false, resp.Attributes.LoggingEnabled); qa = new TopicAttributes() { LoggingEnabled = true }; var req = new CreateTopicRequest() { TopicName = "UTTopic2", Attributes = qa }; Topic topic2 = client.CreateTopic(req); resp = topic2.GetAttributes(); Assert.AreEqual(true, resp.Attributes.LoggingEnabled); client.DeleteTopic("UTTopic2"); qa = new TopicAttributes() { LoggingEnabled = false }; req = new CreateTopicRequest() { TopicName = "UTTopic2", Attributes = qa }; topic2 = client.CreateTopic(req); resp = topic2.GetAttributes(); Assert.AreEqual(false, resp.Attributes.LoggingEnabled); }