public List<ConnectorOperationalStatus> getConnectorOperationalStatus(PrismObject<ResourceType> resource, OperationResult result) throws ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException { List<ConnectorOperationalStatus> statuses = new ArrayList<>(); for (ConnectorSpec connectorSpec: getAllConnectorSpecs(resource)) { ConnectorInstance connectorInstance = connectorManager.getConfiguredConnectorInstance(connectorSpec, false, result); ConnectorOperationalStatus operationalStatus = connectorInstance.getOperationalStatus(); if (operationalStatus != null) { operationalStatus.setConnectorName(connectorSpec.getConnectorName()); statuses.add(operationalStatus); } } return statuses; }
@Test public void test110SearchNonBlocking() throws Exception { final String TEST_NAME = "test100SearchNonBlocking"; TestUtil.displayTestTitle(TEST_NAME); // GIVEN final ObjectClassComplexTypeDefinition accountDefinition = resourceSchema.findDefaultObjectClassDefinition(ShadowKindType.ACCOUNT); // Determine object class from the schema final List<PrismObject<ShadowType>> searchResults = new ArrayList<>(); ShadowResultHandler handler = new ShadowResultHandler() { @Override public boolean handle(PrismObject<ShadowType> shadow) { System.out.println("Search: found: " + shadow); checkUcfShadow(shadow, accountDefinition); searchResults.add(shadow); return true; } }; OperationResult result = new OperationResult(this.getClass().getName() + "." + TEST_NAME); // WHEN cc.search(accountDefinition, null, handler, null, null, null, null, result); // THEN assertEquals("Unexpected number of search results", 1, searchResults.size()); ConnectorOperationalStatus opStat = cc.getOperationalStatus(); display("stats", opStat); assertEquals("Wrong pool active", (Integer)0, opStat.getPoolStatusNumActive()); assertEquals("Wrong pool active", (Integer)1, opStat.getPoolStatusNumIdle()); }
ConnectorOperationalStatus opStat = cc.getOperationalStatus(); display("stats (blocked)", opStat); assertEquals("Wrong pool active", (Integer)1, opStat.getPoolStatusNumActive()); opStat = cc.getOperationalStatus(); display("stats (final)", opStat); assertEquals("Wrong pool active", (Integer)0, opStat.getPoolStatusNumActive());
ConnectorOperationalStatus opStat = cc.getOperationalStatus(); display("stats (blocked 1)", opStat); assertEquals("Wrong pool active", (Integer)1, opStat.getPoolStatusNumActive()); opStat = cc.getOperationalStatus(); display("stats (blocked 2)", opStat); assertEquals("Wrong pool active", (Integer)2, opStat.getPoolStatusNumActive()); assertEquals("Unexpected number of search results 2", 1, searchResults2.size()); opStat = cc.getOperationalStatus(); display("stats (final)", opStat); assertEquals("Wrong pool active", (Integer)0, opStat.getPoolStatusNumActive());
@Test public void test022ConnectorStatsConfigured() throws Exception { final String TEST_NAME = "test022ConnectorStatsConfigured"; TestUtil.displayTestTitle(TEST_NAME); // WHEN ConnectorOperationalStatus operationalStatus = cc.getOperationalStatus(); // THEN display("Connector operational status", operationalStatus); assertNotNull("null operational status", operationalStatus); assertEquals("Wrong connectorClassName", DummyConnector.class.getName(), operationalStatus.getConnectorClassName()); assertEquals("Wrong poolConfigMinSize", null, operationalStatus.getPoolConfigMinSize()); assertEquals("Wrong poolConfigMaxSize", (Integer)10, operationalStatus.getPoolConfigMaxSize()); assertEquals("Wrong poolConfigMinIdle", (Integer)1, operationalStatus.getPoolConfigMinIdle()); assertEquals("Wrong poolConfigMaxIdle", (Integer)10, operationalStatus.getPoolConfigMaxIdle()); assertEquals("Wrong poolConfigWaitTimeout", (Long)150000L, operationalStatus.getPoolConfigWaitTimeout()); assertEquals("Wrong poolConfigMinEvictableIdleTime", (Long)120000L, operationalStatus.getPoolConfigMinEvictableIdleTime()); assertEquals("Wrong poolStatusNumIdle", (Integer)0, operationalStatus.getPoolStatusNumIdle()); assertEquals("Wrong poolStatusNumActive", (Integer)0, operationalStatus.getPoolStatusNumActive()); }
@Test public void test033ConnectorStatsInitialized() throws Exception { final String TEST_NAME = "test033ConnectorStatsInitialized"; TestUtil.displayTestTitle(TEST_NAME); // WHEN ConnectorOperationalStatus operationalStatus = cc.getOperationalStatus(); // THEN display("Connector operational status", operationalStatus); assertNotNull("null operational status", operationalStatus); assertEquals("Wrong connectorClassName", DummyConnector.class.getName(), operationalStatus.getConnectorClassName()); assertEquals("Wrong poolConfigMinSize", null, operationalStatus.getPoolConfigMinSize()); assertEquals("Wrong poolConfigMaxSize", (Integer)10, operationalStatus.getPoolConfigMaxSize()); assertEquals("Wrong poolConfigMinIdle", (Integer)1, operationalStatus.getPoolConfigMinIdle()); assertEquals("Wrong poolConfigMaxIdle", (Integer)10, operationalStatus.getPoolConfigMaxIdle()); assertEquals("Wrong poolConfigWaitTimeout", (Long)150000L, operationalStatus.getPoolConfigWaitTimeout()); assertEquals("Wrong poolConfigMinEvictableIdleTime", (Long)120000L, operationalStatus.getPoolConfigMinEvictableIdleTime()); assertEquals("Wrong poolStatusNumIdle", (Integer)1, operationalStatus.getPoolStatusNumIdle()); assertEquals("Wrong poolStatusNumActive", (Integer)0, operationalStatus.getPoolStatusNumActive()); }