Skip to content

Package: ComponentBindings

ComponentBindings

nameinstructionbranchcomplexitylinemethod
ComponentBindings(Type)
M: 7 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 2 C: 0
0%
M: 1 C: 0
0%
ComponentBindings(Type, SerializerBinding, DeserializerBinding, AdapterBinding)
M: 15 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 6 C: 0
0%
M: 1 C: 0
0%
getAdapterInfo()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
getBindingType()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
getDeserializer()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
getSerializer()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%

Coverage

1: /*
2: * Copyright (c) 2016, 2020 Oracle and/or its affiliates. All rights reserved.
3: *
4: * This program and the accompanying materials are made available under the
5: * terms of the Eclipse Public License v. 2.0 which is available at
6: * http://www.eclipse.org/legal/epl-2.0,
7: * or the Eclipse Distribution License v. 1.0 which is available at
8: * http://www.eclipse.org/org/documents/edl-v10.php.
9: *
10: * SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
11: */
12:
13: package org.eclipse.yasson.internal.components;
14:
15: import java.lang.reflect.Type;
16:
17: /**
18: * Wrapper holding singleton instances of user defined components - Adapters, (De)Serializers.
19: */
20: public class ComponentBindings {
21:
22: private final Type bindingType;
23:
24: private final SerializerBinding serializer;
25:
26: private final DeserializerBinding deserializer;
27:
28: private final AdapterBinding adapterInfo;
29:
30: /**
31: * Construct empty bindings for a given type.
32: *
33: * @param bindingType type components are bound to
34: */
35: public ComponentBindings(Type bindingType) {
36: this(bindingType, null, null, null);
37: }
38:
39: /**
40: * Creates an instance and populates it with bindings for a given type.
41: *
42: * @param bindingType Type components are bound to.
43: * @param serializer Serializer.
44: * @param deserializer Deserializer.
45: * @param adapter Adapter.
46: */
47: public ComponentBindings(Type bindingType,
48: SerializerBinding serializer,
49: DeserializerBinding deserializer,
50: AdapterBinding adapter) {
51: this.bindingType = bindingType;
52: this.serializer = serializer;
53: this.deserializer = deserializer;
54: this.adapterInfo = adapter;
55: }
56:
57: /**
58: * Type to which components are bound.
59: *
60: * @return Bound type.
61: */
62: public Type getBindingType() {
63: return bindingType;
64: }
65:
66: /**
67: * Serializer if any.
68: *
69: * @return serializer
70: */
71: public SerializerBinding getSerializer() {
72: return serializer;
73: }
74:
75: /**
76: * Deserializer if any.
77: *
78: * @return deserializer
79: */
80: public DeserializerBinding getDeserializer() {
81: return deserializer;
82: }
83:
84: /**
85: * Adapter info if any.
86: *
87: * @return adapterInfo
88: */
89: public AdapterBinding getAdapterInfo() {
90: return adapterInfo;
91: }
92:
93: }