f11b5b26cb083939a74966047855a2b2b7d6b5a4
[msb/apigateway.git] / msb-core / apiroute / apiroute-service / src / main / java / org / openo / msb / wrapper / consul / model / health / ServiceHealth.java
1 /**
2  * Copyright 2016 ZTE, Inc. and others.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 /**
17 * Copyright (C) 2016 ZTE, Inc. and others. All rights reserved. (ZTE)
18 *
19 * Licensed under the Apache License, Version 2.0 (the "License");
20 * you may not use this file except in compliance with the License.
21 * You may obtain a copy of the License at
22 *
23 * http://www.apache.org/licenses/LICENSE-2.0
24 *
25 * Unless required by applicable law or agreed to in writing, software
26 * distributed under the License is distributed on an "AS IS" BASIS,
27 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
28 * See the License for the specific language governing permissions and
29 * limitations under the License.
30 */
31
32 package org.openo.msb.wrapper.consul.model.health;
33
34 import org.openo.msb.wrapper.consul.model.catalog.ServiceInfo;
35
36 import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
37 import com.fasterxml.jackson.annotation.JsonProperty;
38 import com.google.common.base.Objects;
39
40
41 @JsonIgnoreProperties(ignoreUnknown = true)
42 public  class ServiceHealth {
43
44     @JsonProperty("Node")
45     public  Node node;
46
47     @JsonProperty("Service")
48     public  Service service;
49
50     public Node getNode() {
51         return node;
52     }
53
54     public void setNode(Node node) {
55         this.node = node;
56     }
57
58     public Service getService() {
59         return service;
60     }
61
62     public void setService(Service service) {
63         this.service = service;
64     }
65     
66     @Override
67     public boolean equals(Object other)
68     {
69         if(this == other)
70             return true;
71         if(other instanceof ServiceHealth)
72         {
73             ServiceHealth that = (ServiceHealth)other;
74             return Objects.equal(node, that.node) && Objects.equal(service, that.service);
75         } else
76         {
77             return false;
78         }
79     }
80     
81     @Override
82     public int hashCode() {
83         return Objects.hashCode(node, service);
84     }
85
86    
87     
88 }