test_class.declarator: observer
test_class.modifier: private
test_class.original_string: private TestCommunicationObserver observer;
test_class.type: TestCommunicationObserver
test_class.var_name: observer
test_class.file: oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/standby/store/CommunicationObserverTest.java
test_class.identifier: CommunicationObserverTest
test_case.body: @Test
      public void observablePartnerMBeanShouldExposePort() throws Exception {
          observer.gotMessageFrom("client", "request", "127.0.0.1", 8080);
          assertEquals(8080, observer.communicationPartners.get(0).getRemotePort());
      }
test_case.class_method_signature: CommunicationObserverTest.observablePartnerMBeanShouldExposePort()
test_case.full_signature: @Test public void observablePartnerMBeanShouldExposePort()
test_case.identifier: observablePartnerMBeanShouldExposePort
test_case.invocations: gotMessageFrom assertEquals getRemotePort get
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void observablePartnerMBeanShouldExposePort()
focal_class.declarator: DEFAULT_MAX_CLIENT_MBEANS = 10
focal_class.modifier: private static final
focal_class.original_string: private static final int DEFAULT_MAX_CLIENT_MBEANS = 10;
focal_class.type: int
focal_class.var_name: DEFAULT_MAX_CLIENT_MBEANS
focal_class.declarator: log = LoggerFactory.getLogger(CommunicationObserver.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger log = LoggerFactory.getLogger(CommunicationObserver.class);
focal_class.type: Logger
focal_class.var_name: log
focal_class.declarator: beans = new HashMap<>()
focal_class.modifier: private final
focal_class.original_string: private final Map<String, CommunicationPartnerMBean> beans = new HashMap<>();
focal_class.type: Map<String, CommunicationPartnerMBean>
focal_class.var_name: beans
focal_class.declarator: maxClientMBeans
focal_class.modifier: private final
focal_class.original_string: private final int maxClientMBeans;
focal_class.type: int
focal_class.var_name: maxClientMBeans
focal_class.declarator: id
focal_class.modifier: private final
focal_class.original_string: private final String id;
focal_class.type: String
focal_class.var_name: id
focal_class.file: oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/standby/store/CommunicationObserver.java
focal_class.identifier: CommunicationObserver
focal_class.class_method_signature: CommunicationObserver.getMBeanName(CommunicationPartnerMBean bean)
focal_class.full_signature: private static ObjectName getMBeanName(CommunicationPartnerMBean bean)
focal_class.identifier: getMBeanName
focal_class.modifiers: private static
focal_class.parameters: (CommunicationPartnerMBean bean)
focal_class.return: ObjectName
focal_class.signature: ObjectName getMBeanName(CommunicationPartnerMBean bean)
focal_class.class_method_signature: CommunicationObserver.oldest(Map<String, CommunicationPartnerMBean> beans)
focal_class.full_signature: private static String oldest(Map<String, CommunicationPartnerMBean> beans)
focal_class.identifier: oldest
focal_class.modifiers: private static
focal_class.parameters: (Map<String, CommunicationPartnerMBean> beans)
focal_class.return: String
focal_class.signature: String oldest(Map<String, CommunicationPartnerMBean> beans)
focal_class.class_method_signature: CommunicationObserver.CommunicationObserver(String id)
focal_class.full_signature: public  CommunicationObserver(String id)
focal_class.identifier: CommunicationObserver
focal_class.modifiers: public
focal_class.parameters: (String id)
focal_class.signature:  CommunicationObserver(String id)
focal_class.class_method_signature: CommunicationObserver.CommunicationObserver(String id, int maxClientMBeans)
focal_class.full_signature:   CommunicationObserver(String id, int maxClientMBeans)
focal_class.identifier: CommunicationObserver
focal_class.parameters: (String id, int maxClientMBeans)
focal_class.signature:  CommunicationObserver(String id, int maxClientMBeans)
focal_class.class_method_signature: CommunicationObserver.registerCommunicationPartner(CommunicationPartnerMBean m)
focal_class.full_signature:  void registerCommunicationPartner(CommunicationPartnerMBean m)
focal_class.identifier: registerCommunicationPartner
focal_class.parameters: (CommunicationPartnerMBean m)
focal_class.return: void
focal_class.signature: void registerCommunicationPartner(CommunicationPartnerMBean m)
focal_class.class_method_signature: CommunicationObserver.safeRegisterCommunicationPartner(CommunicationPartnerMBean m)
focal_class.full_signature: private void safeRegisterCommunicationPartner(CommunicationPartnerMBean m)
focal_class.identifier: safeRegisterCommunicationPartner
focal_class.modifiers: private
focal_class.parameters: (CommunicationPartnerMBean m)
focal_class.return: void
focal_class.signature: void safeRegisterCommunicationPartner(CommunicationPartnerMBean m)
focal_class.class_method_signature: CommunicationObserver.unregisterCommunicationPartner(CommunicationPartnerMBean m)
focal_class.full_signature:  void unregisterCommunicationPartner(CommunicationPartnerMBean m)
focal_class.identifier: unregisterCommunicationPartner
focal_class.parameters: (CommunicationPartnerMBean m)
focal_class.return: void
focal_class.signature: void unregisterCommunicationPartner(CommunicationPartnerMBean m)
focal_class.class_method_signature: CommunicationObserver.safeUnregisterCommunicationPartner(CommunicationPartnerMBean m)
focal_class.full_signature: private void safeUnregisterCommunicationPartner(CommunicationPartnerMBean m)
focal_class.identifier: safeUnregisterCommunicationPartner
focal_class.modifiers: private
focal_class.parameters: (CommunicationPartnerMBean m)
focal_class.return: void
focal_class.signature: void safeUnregisterCommunicationPartner(CommunicationPartnerMBean m)
focal_class.class_method_signature: CommunicationObserver.unregister()
focal_class.full_signature: public void unregister()
focal_class.identifier: unregister
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void unregister()
focal_class.class_method_signature: CommunicationObserver.gotMessageFrom(String client, String request, String address, int port)
focal_class.full_signature: public void gotMessageFrom(String client, String request, String address, int port)
focal_class.identifier: gotMessageFrom
focal_class.modifiers: public
focal_class.parameters: (String client, String request, String address, int port)
focal_class.return: void
focal_class.signature: void gotMessageFrom(String client, String request, String address, int port)
focal_class.class_method_signature: CommunicationObserver.didSendSegmentBytes(String client, int size)
focal_class.full_signature: public void didSendSegmentBytes(String client, int size)
focal_class.identifier: didSendSegmentBytes
focal_class.modifiers: public
focal_class.parameters: (String client, int size)
focal_class.return: void
focal_class.signature: void didSendSegmentBytes(String client, int size)
focal_class.class_method_signature: CommunicationObserver.didSendBinariesBytes(String client, long size)
focal_class.full_signature: public void didSendBinariesBytes(String client, long size)
focal_class.identifier: didSendBinariesBytes
focal_class.modifiers: public
focal_class.parameters: (String client, long size)
focal_class.return: void
focal_class.signature: void didSendBinariesBytes(String client, long size)
focal_class.class_method_signature: CommunicationObserver.getID()
focal_class.full_signature: public String getID()
focal_class.identifier: getID
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getID()
focal_class.class_method_signature: CommunicationObserver.createOrUpdateClientMBean(String clientName, String remoteAddress, int remotePort, Consumer<CommunicationPartnerMBean> update)
focal_class.full_signature: private void createOrUpdateClientMBean(String clientName, String remoteAddress, int remotePort, Consumer<CommunicationPartnerMBean> update)
focal_class.identifier: createOrUpdateClientMBean
focal_class.modifiers: private
focal_class.parameters: (String clientName, String remoteAddress, int remotePort, Consumer<CommunicationPartnerMBean> update)
focal_class.return: void
focal_class.signature: void createOrUpdateClientMBean(String clientName, String remoteAddress, int remotePort, Consumer<CommunicationPartnerMBean> update)
focal_class.class_method_signature: CommunicationObserver.updateClientMBean(String id, Consumer<CommunicationPartnerMBean> update)
focal_class.full_signature: private void updateClientMBean(String id, Consumer<CommunicationPartnerMBean> update)
focal_class.identifier: updateClientMBean
focal_class.modifiers: private
focal_class.parameters: (String id, Consumer<CommunicationPartnerMBean> update)
focal_class.return: void
focal_class.signature: void updateClientMBean(String id, Consumer<CommunicationPartnerMBean> update)
focal_method.body: public void gotMessageFrom(String client, String request, String address, int port) throws MalformedObjectNameException {
          log.debug("Message '{}' received from client {}", request, client);
          createOrUpdateClientMBean(client, address, port, m -> m.onMessageReceived(new Date(), request));
      }
focal_method.class_method_signature: CommunicationObserver.gotMessageFrom(String client, String request, String address, int port)
focal_method.full_signature: public void gotMessageFrom(String client, String request, String address, int port)
focal_method.identifier: gotMessageFrom
focal_method.invocations: debug createOrUpdateClientMBean onMessageReceived
focal_method.modifiers: public
focal_method.parameters: (String client, String request, String address, int port)
focal_method.return: void
focal_method.signature: void gotMessageFrom(String client, String request, String address, int port)