/
DestinationConfiguration.java
154 lines (112 loc) · 3.74 KB
/
DestinationConfiguration.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
/**
* SPDX-FileCopyrightText: (c) 2000 Liferay, Inc. https://liferay.com
* SPDX-License-Identifier: LGPL-2.1-or-later OR LicenseRef-Liferay-DXP-EULA-2.0.0-2023-06
*/
package com.liferay.portal.kernel.messaging;
import com.liferay.petra.string.StringBundler;
import com.liferay.portal.kernel.util.Validator;
import java.io.Serializable;
import java.util.Objects;
import java.util.concurrent.RejectedExecutionHandler;
/**
* @author Michael C. Han
*/
public class DestinationConfiguration implements Serializable {
public static final String DESTINATION_TYPE_PARALLEL = "parallel";
public static final String DESTINATION_TYPE_SERIAL = "serial";
public static final String DESTINATION_TYPE_SYNCHRONOUS = "synchronous";
public static DestinationConfiguration
createParallelDestinationConfiguration(String destinationName) {
return new DestinationConfiguration(
DESTINATION_TYPE_PARALLEL, destinationName);
}
public static DestinationConfiguration createSerialDestinationConfiguration(
String destinationName) {
return new DestinationConfiguration(
DESTINATION_TYPE_SERIAL, destinationName);
}
public static DestinationConfiguration
createSynchronousDestinationConfiguration(String destinationName) {
return new DestinationConfiguration(
DESTINATION_TYPE_SYNCHRONOUS, destinationName);
}
public DestinationConfiguration(
String destinationType, String destinationName) {
_destinationType = destinationType;
if (Validator.isNull(destinationName)) {
throw new IllegalArgumentException("Destination name is null");
}
_destinationName = destinationName;
}
@Override
public boolean equals(Object object) {
if (this == object) {
return true;
}
if (!(object instanceof DestinationConfiguration)) {
return false;
}
DestinationConfiguration destinationConfiguration =
(DestinationConfiguration)object;
if (Objects.equals(
_destinationName, destinationConfiguration._destinationName)) {
return true;
}
return false;
}
public String getDestinationName() {
return _destinationName;
}
public String getDestinationType() {
return _destinationType;
}
public int getMaximumQueueSize() {
return _maximumQueueSize;
}
public RejectedExecutionHandler getRejectedExecutionHandler() {
return _rejectedExecutionHandler;
}
public int getWorkersCoreSize() {
return _workersCoreSize;
}
public int getWorkersMaxSize() {
return _workersMaxSize;
}
@Override
public int hashCode() {
return _destinationName.hashCode();
}
public void setDestinationType(String destinationType) {
_destinationType = destinationType;
}
public void setMaximumQueueSize(int maximumQueueSize) {
_maximumQueueSize = maximumQueueSize;
}
public void setRejectedExecutionHandler(
RejectedExecutionHandler rejectedExecutionHandler) {
_rejectedExecutionHandler = rejectedExecutionHandler;
}
public void setWorkersCoreSize(int workersCoreSize) {
_workersCoreSize = workersCoreSize;
}
public void setWorkersMaxSize(int workersMaxSize) {
_workersMaxSize = workersMaxSize;
}
@Override
public String toString() {
return StringBundler.concat(
"{_destinationName=", _destinationName, ", _destinationType=",
_destinationType, ", _maximumQueueSize=", _maximumQueueSize,
", _rejectedExecutionHandler=", _rejectedExecutionHandler,
", _workersCoreSize=", _workersCoreSize, ", _workersMaxSize=",
_workersMaxSize, "}");
}
private static final int _WORKERS_CORE_SIZE = 2;
private static final int _WORKERS_MAX_SIZE = 5;
private final String _destinationName;
private String _destinationType;
private int _maximumQueueSize = Integer.MAX_VALUE;
private RejectedExecutionHandler _rejectedExecutionHandler;
private int _workersCoreSize = _WORKERS_CORE_SIZE;
private int _workersMaxSize = _WORKERS_MAX_SIZE;
}