You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2020/05/18 15:52:43 UTC

[openmeetings] branch master updated: [OPENMEETINGS-2355] ghost streams should be fixed

This is an automated email from the ASF dual-hosted git repository.

solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git


The following commit(s) were added to refs/heads/master by this push:
     new f4b332a  [OPENMEETINGS-2355] ghost streams should be fixed
f4b332a is described below

commit f4b332a64063f15ce1b8058584559d2e58b6ae77
Author: Maxim Solodovnik <so...@gmail.com>
AuthorDate: Mon May 18 22:52:26 2020 +0700

    [OPENMEETINGS-2355] ghost streams should be fixed
---
 .../openmeetings/web/admin/connection/ConnectionsPanel.java    |  9 +--------
 .../apache/openmeetings/web/admin/connection/KStreamDto.java   |  9 +--------
 .../main/java/org/apache/openmeetings/web/app/Application.java | 10 +++++++++-
 .../java/org/apache/openmeetings/web/app/ClientManager.java    |  3 ---
 .../org/apache/openmeetings/web/app/WhiteboardManager.java     |  3 ---
 5 files changed, 11 insertions(+), 23 deletions(-)

diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
index 270f809..3ba5697 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
@@ -49,16 +49,11 @@ import org.apache.wicket.markup.repeater.Item;
 import org.apache.wicket.markup.repeater.RepeatingView;
 import org.apache.wicket.model.ResourceModel;
 import org.apache.wicket.spring.injection.annot.SpringBean;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxLink;
 import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
 
 public class ConnectionsPanel extends AdminBasePanel {
-
-	private static final Logger log = LoggerFactory.getLogger(ConnectionsPanel.class);
-
 	private static final long serialVersionUID = 1L;
 	@SpringBean
 	private ClientManager cm;
@@ -85,11 +80,9 @@ public class ConnectionsPanel extends AdminBasePanel {
 				l.addAll(cm.list());
 				Collection<KStreamDto> streams = streamProcessor.getStreams()
 						.stream()
-						.map(kStream -> new KStreamDto("processor", kStream))
+						.map(KStreamDto::new)
 						.collect(Collectors.toList());
 				l.addAll(streams);
-				log.info("Retrieve all Streams, StreamProcessor has {} of streams", streams.size());
-
 				return l;
 			}
 
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java
index cc6521d..5f87f68 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/KStreamDto.java
@@ -36,8 +36,6 @@ import org.apache.openmeetings.db.entity.record.RecordingChunk.Type;
  */
 public class KStreamDto implements IDataProviderEntity {
 	private static final long serialVersionUID = 1L;
-	/** StreamProcessor or KurentoHandler list */
-	private String source;
 
 	private String sid;
 	private String uid;
@@ -49,8 +47,7 @@ public class KStreamDto implements IDataProviderEntity {
 	private Long chunkId;
 	private Type type;
 
-	public KStreamDto(String source, KStream kStream) {
-		this.source = source;
+	public KStreamDto(KStream kStream) {
 		this.sid = kStream.getSid();
 		this.uid = kStream.getUid();
 		this.roomId = (kStream.getRoom() == null) ? null : kStream.getRoom().getRoomId();
@@ -66,10 +63,6 @@ public class KStreamDto implements IDataProviderEntity {
 		return serialVersionUID;
 	}
 
-	public String getSource() {
-		return source;
-	}
-
 	public String getSid() {
 		return sid;
 	}
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
index 630a710..2554e84 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
@@ -135,6 +135,7 @@ import com.googlecode.wicket.jquery.ui.plugins.wysiwyg.settings.WysiwygLibrarySe
 import com.hazelcast.cluster.Member;
 import com.hazelcast.cluster.MembershipEvent;
 import com.hazelcast.cluster.MembershipListener;
+import com.hazelcast.config.Config;
 import com.hazelcast.config.XmlConfigBuilder;
 import com.hazelcast.core.Hazelcast;
 import com.hazelcast.core.HazelcastInstance;
@@ -164,7 +165,7 @@ public class Application extends AuthenticatedWebApplication implements IApplica
 	public static final String HASH_MAPPING = "/hash";
 	public static final String SIGNIN_MAPPING = "/signin";
 	public static final String NOTINIT_MAPPING = "/notinited";
-	final HazelcastInstance hazelcast = Hazelcast.getOrCreateHazelcastInstance(new XmlConfigBuilder().build());
+	HazelcastInstance hazelcast;
 	private ITopic<IClusterWsMessage> hazelWsTopic;
 	private String serverId;
 	private String wsUrl;
@@ -180,6 +181,8 @@ public class Application extends AuthenticatedWebApplication implements IApplica
 	@Autowired
 	private ClientManager cm;
 	@Autowired
+	private WhiteboardManager wbManager;
+	@Autowired
 	private AppointmentDao appointmentDao;
 
 	@Override
@@ -189,6 +192,9 @@ public class Application extends AuthenticatedWebApplication implements IApplica
 		getApplicationSettings().setAccessDeniedPage(AccessDeniedPage.class);
 		getComponentInstantiationListeners().add(new SpringComponentInjector(this, ctx, true));
 
+		Config cfg = new XmlConfigBuilder().build();
+		cfg.setClassLoader(getClass().getClassLoader());
+		hazelcast = Hazelcast.getOrCreateHazelcastInstance(cfg);
 		serverId = hazelcast.getName();
 		hazelcast.getCluster().getMembers().forEach(m -> {
 			cm.serverAdded(m.getAttribute(NAME_ATTR_KEY), m.getAttribute(SERVER_URL_ATTR_KEY));
@@ -330,6 +336,8 @@ public class Application extends AuthenticatedWebApplication implements IApplica
 
 			// Init all global config properties
 			cfgDao.reinit();
+			wbManager.init();
+			cm.init();
 
 			// Init properties
 			updateJpaAddresses();
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
index c413b61..317f9ee 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ClientManager.java
@@ -37,8 +37,6 @@ import java.util.function.Function;
 import java.util.function.Predicate;
 import java.util.stream.Collectors;
 
-import javax.annotation.PostConstruct;
-
 import org.apache.openmeetings.core.remote.KurentoHandler;
 import org.apache.openmeetings.db.dao.log.ConferenceLogDao;
 import org.apache.openmeetings.db.entity.basic.Client;
@@ -101,7 +99,6 @@ public class ClientManager implements IClientManager {
 		return app.hazelcast.getMap(INSTANT_TOKENS_KEY);
 	}
 
-	@PostConstruct
 	void init() {
 		log.debug("Cluster:: PostConstruct");
 		onlineClients.putAll(map());
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WhiteboardManager.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WhiteboardManager.java
index 01cc78a..8deaf90 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WhiteboardManager.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WhiteboardManager.java
@@ -35,8 +35,6 @@ import java.util.concurrent.TimeUnit;
 import java.util.function.BiConsumer;
 import java.util.function.Consumer;
 
-import javax.annotation.PostConstruct;
-
 import org.apache.openmeetings.core.util.WebSocketHelper;
 import org.apache.openmeetings.db.dao.label.LabelDao;
 import org.apache.openmeetings.db.dto.room.Whiteboard;
@@ -80,7 +78,6 @@ public class WhiteboardManager implements IWhiteboardManager {
 		return app.hazelcast.getMap(WBS_KEY);
 	}
 
-	@PostConstruct
 	void init() {
 		map().addEntryListener(new WbListener(), true);
 		map().entrySet().forEach(e -> onlineWbs.put(e.getKey(), e.getValue()));