/* * * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. * */ using System; namespace Apache.Qpid.Integration.Tests.framework { /// /// TestClientDetails is used to encapsulate information about an interop test client. It pairs together the unique /// name of the client, and the route on which it listens to its control messages. /// ///

///
CRC Card
Responsibilities Collaborations ///
Record test clients control addresses together with their names. ///
///

public class TestClientDetails { /// The test clients name. public string clientName; /// The routing key of the test clients control topic. public string privateControlKey; /// /// Two TestClientDetails are considered to be equal, iff they have the same client name. /// /// The object to compare to. /// /// If the object to compare to is a TestClientDetails equal to this one, false otherwise. public override bool Equals(Object o) { if (this == o) { return true; } if (!(o is TestClientDetails)) { return false; } TestClientDetails testClientDetails = (TestClientDetails) o; return !((clientName != null) ? (!clientName.Equals(testClientDetails.clientName)) : (testClientDetails.clientName != null)); } /// /// Computes a hash code compatible with the equals method; based on the client name alone. /// /// A hash code for this. public override int GetHashCode() { return ((clientName != null) ? clientName.GetHashCode() : 0); } /// /// Outputs the client name and address details. Mostly used for debugging purposes. /// /// The client name and address. public override string ToString() { return "TestClientDetails: [ clientName = " + clientName + ", privateControlKey = " + privateControlKey + " ]"; } } }