use of org.apache.pulsar.common.configuration.PulsarConfiguration in project pulsar by yahoo.
the class BrokerAdditionalServletTest method mockAdditionalServlet.
private void mockAdditionalServlet(PulsarService pulsar) {
Servlet servlet = new OrdinaryServlet();
AdditionalServlet brokerAdditionalServlet = Mockito.mock(AdditionalServlet.class);
Mockito.when(brokerAdditionalServlet.getBasePath()).thenReturn(BASE_PATH);
Mockito.when(brokerAdditionalServlet.getServletHolder()).thenReturn(new ServletHolder(servlet));
AdditionalServletWithPulsarService brokerAdditionalServletWithPulsarService = new AdditionalServletWithPulsarService() {
private PulsarService pulsarService;
@Override
public void setPulsarService(PulsarService pulsarService) {
this.pulsarService = pulsarService;
}
@Override
public void loadConfig(PulsarConfiguration pulsarConfiguration) {
// No-op
}
@Override
public String getBasePath() {
return WITH_PULSAR_SERVICE_BASE_PATH;
}
@Override
public ServletHolder getServletHolder() {
return new ServletHolder(new WithPulsarServiceServlet(pulsarService));
}
@Override
public void close() {
// No-op
}
};
AdditionalServlets brokerAdditionalServlets = Mockito.mock(AdditionalServlets.class);
Map<String, AdditionalServletWithClassLoader> map = new HashMap<>();
map.put("broker-additional-servlet", new AdditionalServletWithClassLoader(brokerAdditionalServlet, null));
map.put("broker-additional-servlet-with-pulsar-service", new AdditionalServletWithClassLoader(brokerAdditionalServletWithPulsarService, null));
Mockito.when(brokerAdditionalServlets.getServlets()).thenReturn(map);
Mockito.when(pulsar.getBrokerAdditionalServlets()).thenReturn(brokerAdditionalServlets);
}
use of org.apache.pulsar.common.configuration.PulsarConfiguration in project pulsar by yahoo.
the class AdditionalServletWithClassLoaderTest method testClassLoaderSwitcher.
@Test
public void testClassLoaderSwitcher() throws Exception {
NarClassLoader narLoader = mock(NarClassLoader.class);
AdditionalServlet servlet = new AdditionalServlet() {
@Override
public void loadConfig(PulsarConfiguration pulsarConfiguration) {
assertEquals(Thread.currentThread().getContextClassLoader(), narLoader);
}
@Override
public String getBasePath() {
assertEquals(Thread.currentThread().getContextClassLoader(), narLoader);
return "base-path";
}
@Override
public ServletHolder getServletHolder() {
assertEquals(Thread.currentThread().getContextClassLoader(), narLoader);
return null;
}
@Override
public void close() {
assertEquals(Thread.currentThread().getContextClassLoader(), narLoader);
}
};
AdditionalServletWithClassLoader additionalServletWithClassLoader = new AdditionalServletWithClassLoader(servlet, narLoader);
ClassLoader curClassLoader = Thread.currentThread().getContextClassLoader();
// test class loader
assertEquals(additionalServletWithClassLoader.getClassLoader(), narLoader);
// test getBasePath
assertEquals(additionalServletWithClassLoader.getBasePath(), "base-path");
assertEquals(Thread.currentThread().getContextClassLoader(), curClassLoader);
// test loadConfig
ServiceConfiguration conf = new ServiceConfiguration();
additionalServletWithClassLoader.loadConfig(conf);
assertEquals(Thread.currentThread().getContextClassLoader(), curClassLoader);
// test getServletHolder
assertNull(additionalServletWithClassLoader.getServletHolder());
assertEquals(Thread.currentThread().getContextClassLoader(), curClassLoader);
// test getServlet
assertEquals(additionalServletWithClassLoader.getServlet(), servlet);
assertEquals(Thread.currentThread().getContextClassLoader(), curClassLoader);
// test close
additionalServletWithClassLoader.close();
assertEquals(Thread.currentThread().getContextClassLoader(), curClassLoader);
}
use of org.apache.pulsar.common.configuration.PulsarConfiguration in project incubator-pulsar by apache.
the class BrokerAdditionalServletTest method mockAdditionalServlet.
private void mockAdditionalServlet(PulsarService pulsar) {
Servlet servlet = new OrdinaryServlet();
AdditionalServlet brokerAdditionalServlet = Mockito.mock(AdditionalServlet.class);
Mockito.when(brokerAdditionalServlet.getBasePath()).thenReturn(BASE_PATH);
Mockito.when(brokerAdditionalServlet.getServletHolder()).thenReturn(new ServletHolder(servlet));
AdditionalServletWithPulsarService brokerAdditionalServletWithPulsarService = new AdditionalServletWithPulsarService() {
private PulsarService pulsarService;
@Override
public void setPulsarService(PulsarService pulsarService) {
this.pulsarService = pulsarService;
}
@Override
public void loadConfig(PulsarConfiguration pulsarConfiguration) {
// No-op
}
@Override
public String getBasePath() {
return WITH_PULSAR_SERVICE_BASE_PATH;
}
@Override
public ServletHolder getServletHolder() {
return new ServletHolder(new WithPulsarServiceServlet(pulsarService));
}
@Override
public void close() {
// No-op
}
};
AdditionalServlets brokerAdditionalServlets = Mockito.mock(AdditionalServlets.class);
Map<String, AdditionalServletWithClassLoader> map = new HashMap<>();
map.put("broker-additional-servlet", new AdditionalServletWithClassLoader(brokerAdditionalServlet, null));
map.put("broker-additional-servlet-with-pulsar-service", new AdditionalServletWithClassLoader(brokerAdditionalServletWithPulsarService, null));
Mockito.when(brokerAdditionalServlets.getServlets()).thenReturn(map);
Mockito.when(pulsar.getBrokerAdditionalServlets()).thenReturn(brokerAdditionalServlets);
}
use of org.apache.pulsar.common.configuration.PulsarConfiguration in project incubator-pulsar by apache.
the class AdditionalServletWithClassLoaderTest method testClassLoaderSwitcher.
@Test
public void testClassLoaderSwitcher() throws Exception {
NarClassLoader narLoader = mock(NarClassLoader.class);
AdditionalServlet servlet = new AdditionalServlet() {
@Override
public void loadConfig(PulsarConfiguration pulsarConfiguration) {
assertEquals(Thread.currentThread().getContextClassLoader(), narLoader);
}
@Override
public String getBasePath() {
assertEquals(Thread.currentThread().getContextClassLoader(), narLoader);
return "base-path";
}
@Override
public ServletHolder getServletHolder() {
assertEquals(Thread.currentThread().getContextClassLoader(), narLoader);
return null;
}
@Override
public void close() {
assertEquals(Thread.currentThread().getContextClassLoader(), narLoader);
}
};
AdditionalServletWithClassLoader additionalServletWithClassLoader = new AdditionalServletWithClassLoader(servlet, narLoader);
ClassLoader curClassLoader = Thread.currentThread().getContextClassLoader();
// test class loader
assertEquals(additionalServletWithClassLoader.getClassLoader(), narLoader);
// test getBasePath
assertEquals(additionalServletWithClassLoader.getBasePath(), "base-path");
assertEquals(Thread.currentThread().getContextClassLoader(), curClassLoader);
// test loadConfig
ServiceConfiguration conf = new ServiceConfiguration();
additionalServletWithClassLoader.loadConfig(conf);
assertEquals(Thread.currentThread().getContextClassLoader(), curClassLoader);
// test getServletHolder
assertNull(additionalServletWithClassLoader.getServletHolder());
assertEquals(Thread.currentThread().getContextClassLoader(), curClassLoader);
// test getServlet
assertEquals(additionalServletWithClassLoader.getServlet(), servlet);
assertEquals(Thread.currentThread().getContextClassLoader(), curClassLoader);
// test close
additionalServletWithClassLoader.close();
assertEquals(Thread.currentThread().getContextClassLoader(), curClassLoader);
}
use of org.apache.pulsar.common.configuration.PulsarConfiguration in project pulsar by apache.
the class BrokerAdditionalServletTest method mockAdditionalServlet.
private void mockAdditionalServlet(PulsarService pulsar) {
Servlet servlet = new OrdinaryServlet();
AdditionalServlet brokerAdditionalServlet = Mockito.mock(AdditionalServlet.class);
Mockito.when(brokerAdditionalServlet.getBasePath()).thenReturn(BASE_PATH);
Mockito.when(brokerAdditionalServlet.getServletHolder()).thenReturn(new ServletHolder(servlet));
AdditionalServletWithPulsarService brokerAdditionalServletWithPulsarService = new AdditionalServletWithPulsarService() {
private PulsarService pulsarService;
@Override
public void setPulsarService(PulsarService pulsarService) {
this.pulsarService = pulsarService;
}
@Override
public void loadConfig(PulsarConfiguration pulsarConfiguration) {
// No-op
}
@Override
public String getBasePath() {
return WITH_PULSAR_SERVICE_BASE_PATH;
}
@Override
public ServletHolder getServletHolder() {
return new ServletHolder(new WithPulsarServiceServlet(pulsarService));
}
@Override
public void close() {
// No-op
}
};
AdditionalServlets brokerAdditionalServlets = Mockito.mock(AdditionalServlets.class);
Map<String, AdditionalServletWithClassLoader> map = new HashMap<>();
map.put("broker-additional-servlet", new AdditionalServletWithClassLoader(brokerAdditionalServlet, null));
map.put("broker-additional-servlet-with-pulsar-service", new AdditionalServletWithClassLoader(brokerAdditionalServletWithPulsarService, null));
Mockito.when(brokerAdditionalServlets.getServlets()).thenReturn(map);
Mockito.when(pulsar.getBrokerAdditionalServlets()).thenReturn(brokerAdditionalServlets);
}
Aggregations