OpenSplice Java 5 DCPS  v6.x
OpenSplice Java 5 OpenSplice Data Distribution Service Data-Centric Publish-Subscribe API
ShareImpl.java
Go to the documentation of this file.
1 /*
2  * Vortex OpenSplice
3  *
4  * This software and documentation are Copyright 2006 to 2021 ADLINK
5  * Technology Limited, its affiliated companies and licensors. All rights
6  * reserved.
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  *
20  */
21 package org.opensplice.dds.core.policy;
22 
26 
27 public class ShareImpl extends QosPolicyImpl implements Share {
28  private static final long serialVersionUID = -1731793312659549354L;
29  private final String name;
30 
32  super(environment);
33 
34  if (name != null) {
35  this.name = name;
36  } else {
37  this.name = "";
38  }
39  }
40 
42  this(environment, "");
43  }
44 
45  @Override
47  return this.environment;
48  }
49 
50  @Override
51  public String getName() {
52  return this.name;
53  }
54 
55  @Override
56  public Share withName(String name) {
57  return new ShareImpl(this.environment, name);
58  }
59 
60  @Override
61  public Class<? extends QosPolicy> getPolicyClass() {
62  return Share.class;
63  }
64 
65  @Override
66  public boolean equals(Object other) {
67  if (!(other instanceof ShareImpl)) {
68  return false;
69  }
70  return this.name.equals(((ShareImpl) other).name);
71  }
72 
73  @Override
74  public int hashCode() {
75  return 31 * 17 + this.name.hashCode();
76  }
77 
78 }
ShareImpl(OsplServiceEnvironment environment, String name)
Definition: ShareImpl.java:31
Class<? extends QosPolicy > getPolicyClass()
Definition: ShareImpl.java:61
This QosPolicy allows sharing of entities by multiple processes or threads.
Definition: Share.java:46
ShareImpl(OsplServiceEnvironment environment)
Definition: ShareImpl.java:41
Share withName(String name)
Copy this policy and override the value of the property.
Definition: ShareImpl.java:56
This class is the abstract root for all the QoS policies.
Definition: QosPolicy.java:118
DDS implementations are rooted in this class, a concrete subclass of which can be instantiated based ...