Skip to content

Vt #55

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 43 commits into from
Mar 8, 2024
Merged

Vt #55

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
b6e9790
Retired SMQP Versions < v750
iitsoftware Nov 23, 2023
146a59a
Retired SMQP Versions < v750, synchronized replaced with locks
iitsoftware Nov 26, 2023
a3a6b81
Readded FillCacheLock to consumer, replaced ArrayList with Concurrent…
iitsoftware Nov 28, 2023
dca45ce
Fixed OrderedSet add
iitsoftware Nov 29, 2023
c999fb2
removed debug, added debug
iitsoftware Nov 30, 2023
f718c4a
AtomicWrappingCounterInteger, AtomicWrappingCounterLong new
iitsoftware Dec 2, 2023
65442f7
additional get methods added
iitsoftware Dec 6, 2023
6d3f3eb
new ConcurrentList.java
iitsoftware Dec 13, 2023
3da4f46
Trace Swiftlet stopped multiple times
iitsoftware Dec 13, 2023
7e9ff6a
ConcurrentExpandableList change add()
iitsoftware Dec 15, 2023
8d8b9bb
ConcurrentExpandableList/ExpandableList with free index queue
iitsoftware Dec 16, 2023
5007916
EventLoop added
iitsoftware Dec 16, 2023
bee2c26
EventLoop, ThreadpoolSwiftlet, TimerSwiftlet changed
iitsoftware Dec 17, 2023
056256d
RequestRegistry, debug output removed
iitsoftware Dec 19, 2023
efd9ccd
ThreadpookSwiftlet, removed bulkMode parameter
iitsoftware Dec 20, 2023
2248c47
ThreadpoolSwiftlet, runAsyncVirtual/Platform
iitsoftware Dec 20, 2023
af4cae4
Removed IntraVMPoolManager.java
iitsoftware Dec 20, 2023
9ec83e5
Revert "ThreadpoolSwiftlet, runAsyncVirtual/Platform"
iitsoftware Dec 20, 2023
bb4b6c8
fixes
iitsoftware Dec 20, 2023
2412a56
removed old thread pools
iitsoftware Dec 22, 2023
0bfd18b
fixed ExpandableList.add
iitsoftware Dec 23, 2023
fc0aa96
now with maxValue to wrap
iitsoftware Dec 23, 2023
f0c07ce
OrderedSet: getSet added
iitsoftware Jan 8, 2024
0f392f8
freeze/unfreeze added
iitsoftware Jan 8, 2024
bee1829
freeze/unfreeze added
iitsoftware Jan 8, 2024
9258a34
swiftlet aith _op=add is now possible
iitsoftware Jan 17, 2024
b880249
swiftlet aith _op=add is now possible
iitsoftware Jan 17, 2024
4ad58ea
swiftlet aith _op=add is now possible
iitsoftware Jan 17, 2024
4758b51
ha-router with add
iitsoftware Jan 18, 2024
bc123a8
ha-router with add
iitsoftware Jan 18, 2024
cba0cf7
reset
iitsoftware Jan 18, 2024
10132cf
debug
iitsoftware Jan 18, 2024
1f37302
debug raus
iitsoftware Jan 18, 2024
64812a0
changed singleton
iitsoftware Jan 18, 2024
dde2e78
removed executeInNewThread from EventLoop
iitsoftware Jan 20, 2024
b819e77
keepalive thread added to SwiftletManager
iitsoftware Jan 22, 2024
fa53102
readLock -> writeLock on prepare
iitsoftware Jan 23, 2024
771b1d3
fixed JMM issues
iitsoftware Jan 27, 2024
e63a9f9
resizing refactored
iitsoftware Feb 3, 2024
fca8c32
removed debug output
iitsoftware Feb 4, 2024
6f28ccf
13.0.0
iitsoftware Feb 5, 2024
c764d26
concurrency issue session/connection consumer list
iitsoftware Feb 16, 2024
ccd10a9
added runasync(r, b)
iitsoftware Feb 19, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

<groupId>com.swiftmq</groupId>
<artifactId>swiftmq-client</artifactId>
<version>12.5.4</version>
<version>13.0.0</version>

<name>SwiftMQ Client</name>
<description>Client for SwiftMQ Messaging System with JMS, AMQP 1.0 and file transfer over JMS.</description>
Expand Down
456 changes: 213 additions & 243 deletions src/main/java/com/swiftmq/admin/cli/CLI.java

Large diffs are not rendered by default.

59 changes: 0 additions & 59 deletions src/main/java/com/swiftmq/admin/cli/v400/RequestProcessor.java

This file was deleted.

31 changes: 11 additions & 20 deletions src/main/java/com/swiftmq/admin/mgmt/EndpointFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

package com.swiftmq.admin.mgmt;

import com.swiftmq.admin.mgmt.v750.EndpointImpl;
import com.swiftmq.jms.BytesMessageImpl;
import com.swiftmq.jms.MessageImpl;
import com.swiftmq.jms.QueueImpl;
Expand Down Expand Up @@ -103,29 +104,19 @@ public Endpoint create(RequestServiceFactory rsf, boolean createInternalCommands

Endpoint endpoint = null;
try {
switch (MGMT_PROTOCOL_VERSION) {
case 750: {
ProtocolReply pr = (ProtocolReply) request(new ProtocolRequest(750));
if (pr.isOk()) {
endpoint = new com.swiftmq.admin.mgmt.v750.EndpointImpl(connection, senderSession, sender, receiverSession, receiver, replyQueue, rsf.createRequestService(750), createInternalCommands);
endpoint.setSubscriptionFilterEnabled(true);
} else {
pr = (ProtocolReply) request(new ProtocolRequest(400));
if (!pr.isOk())
throw pr.getException();
endpoint = new com.swiftmq.admin.mgmt.v400.EndpointImpl(connection, senderSession, sender, receiverSession, receiver, replyQueue, rsf.createRequestService(400), createInternalCommands);
}
}
break;
case 400: {
ProtocolReply pr = (ProtocolReply) request(new ProtocolRequest(400));
if (MGMT_PROTOCOL_VERSION == 750) {
ProtocolReply pr = (ProtocolReply) request(new ProtocolRequest(750));
if (pr.isOk()) {
endpoint = new EndpointImpl(connection, senderSession, sender, receiverSession, receiver, replyQueue, rsf.createRequestService(750), createInternalCommands);
endpoint.setSubscriptionFilterEnabled(true);
} else {
pr = (ProtocolReply) request(new ProtocolRequest(400));
if (!pr.isOk())
throw pr.getException();
endpoint = new com.swiftmq.admin.mgmt.v400.EndpointImpl(connection, senderSession, sender, receiverSession, receiver, replyQueue, rsf.createRequestService(400), createInternalCommands);
endpoint = new com.swiftmq.admin.mgmt.v750.EndpointImpl(connection, senderSession, sender, receiverSession, receiver, replyQueue, rsf.createRequestService(400), createInternalCommands);
}
break;
default:
throw new Exception("Invalid management protocol version (set via swiftmq.mgmt.protocol.version): " + MGMT_PROTOCOL_VERSION);
} else {
throw new Exception("Invalid management protocol version (set via swiftmq.mgmt.protocol.version): " + MGMT_PROTOCOL_VERSION);
}
} catch (Exception e) {
cleanup();
Expand Down
25 changes: 10 additions & 15 deletions src/main/java/com/swiftmq/admin/mgmt/EndpointRegistry.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,41 +17,36 @@

package com.swiftmq.admin.mgmt;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

public class EndpointRegistry {
Map endpoints = new HashMap();
boolean closed = false;
private final Map<String, Endpoint> endpoints = new ConcurrentHashMap<>();
private volatile boolean closed = false;

public EndpointRegistry() {
}

public synchronized void put(String routerName, Endpoint endpoint) throws EndpointRegistryClosedException {
public void put(String routerName, Endpoint endpoint) throws EndpointRegistryClosedException {
if (closed)
throw new EndpointRegistryClosedException("EndpointRegistry already closed!");
endpoints.put(routerName, endpoint);
}

public synchronized Endpoint get(String routerName) {
public Endpoint get(String routerName) {
return (Endpoint) endpoints.get(routerName);
}

public synchronized Endpoint remove(String routerName) {
public Endpoint remove(String routerName) {
return (Endpoint) endpoints.remove(routerName);
}

public void close() {
Map map;
synchronized (this) {
map = (Map) ((HashMap) endpoints).clone();
endpoints.clear();
closed = true;
}
for (Iterator iter = map.entrySet().iterator(); iter.hasNext(); ) {
Endpoint endpoint = (Endpoint) ((Map.Entry) iter.next()).getValue();
for (Map.Entry<String, Endpoint> o : endpoints.entrySet()) {
Endpoint endpoint = o.getValue();
endpoint.close();
}
endpoints.clear();
closed = true;
}
}
Loading