OpenSplice Java 5 DCPS  v6.x
OpenSplice Java 5 OpenSplice Data Distribution Service Data-Centric Publish-Subscribe API
TypeDescriptor.java
Go to the documentation of this file.
1 /* Copyright 2010, Object Management Group, Inc.
2  * Copyright 2010, PrismTech, Inc.
3  * Copyright 2010, Real-Time Innovations, Inc.
4  * All rights reserved.
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */
18 
19 package org.omg.dds.type.dynamic;
20 
21 import java.io.Serializable;
22 import java.util.List;
23 
24 import org.omg.dds.core.DDSObject;
25 import org.omg.dds.type.Optional;
26 import org.omg.dds.type.TypeKind;
27 
28 
32 public interface TypeDescriptor extends Serializable, DDSObject
33 {
34  public boolean isConsistent();
35 
39  public TypeKind getKind();
40 
44  public String getName();
45 
49  public DynamicType getBaseType();
50 
55 
59  public List<Integer> getBound();
60 
64  @Optional
65  public DynamicType getElementType();
66 
70  @Optional
72 
73 
74  // --- Modification: -----------------------------------------------------
75 
81  public TypeDescriptor withKind(TypeKind kind);
82 
88  public TypeDescriptor withName(String name);
89 
95  public TypeDescriptor withBaseType(DynamicType baseType);
96 
103  DynamicType discriminatorType);
104 
110  public TypeDescriptor withBound(int... bound);
111 
117  public TypeDescriptor withElementType(DynamicType elementType);
118 
124  public TypeDescriptor withKeyElementType(DynamicType keyElementType);
125 }
TypeDescriptor withElementType(DynamicType elementType)
Copy this descriptor and apply the given element type.
TypeDescriptor withKeyElementType(DynamicType keyElementType)
Copy this descriptor and apply the given key element type.
TypeDescriptor withName(String name)
Copy this descriptor and apply the given name.
TypeDescriptor withBaseType(DynamicType baseType)
Copy this descriptor and apply the given base type.
TypeDescriptor withBound(int... bound)
Copy this descriptor and apply the given bound(s).
A supertype of all DDS classes and interfaces.
Definition: DDSObject.java:25
TypeDescriptor withDiscriminatorType(DynamicType discriminatorType)
Copy this descriptor and apply the given discriminator type.
Objects of this type are immutable.
TypeDescriptor withKind(TypeKind kind)
Copy this descriptor and apply the given kind.