Search in sources :

Example 1 with ChainingClassLoader

use of org.graylog2.shared.plugins.ChainingClassLoader in project graylog2-server by Graylog2.

the class V20161215163900_MoveIndexSetDefaultConfigTest method setUp.

@Before
public void setUp() throws Exception {
    this.clusterConfigService = spy(new ClusterConfigServiceImpl(objectMapperProvider, fongoRule.getConnection(), nodeId, new ChainingClassLoader(getClass().getClassLoader()), new ClusterEventBus()));
    this.collection = fongoRule.getDatabase().getCollection("index_sets");
    this.migration = new V20161215163900_MoveIndexSetDefaultConfig(fongoRule.getConnection(), clusterConfigService);
}
Also used : ClusterConfigServiceImpl(org.graylog2.cluster.ClusterConfigServiceImpl) ChainingClassLoader(org.graylog2.shared.plugins.ChainingClassLoader) ClusterEventBus(org.graylog2.events.ClusterEventBus) Before(org.junit.Before)

Example 2 with ChainingClassLoader

use of org.graylog2.shared.plugins.ChainingClassLoader in project graylog2-server by Graylog2.

the class Server method getCommandBindings.

@Override
protected List<Module> getCommandBindings() {
    final ImmutableList.Builder<Module> modules = ImmutableList.builder();
    modules.add(new ConfigurationModule(configuration), new ServerBindings(configuration), new PersistenceServicesBindings(), new MessageFilterBindings(), new MessageProcessorModule(), new AlarmCallbackBindings(), new InitializerBindings(), new MessageOutputBindings(configuration, chainingClassLoader), new RotationStrategyBindings(), new RetentionStrategyBindings(), new PeriodicalBindings(), new ObjectMapperModule(chainingClassLoader), new RestApiBindings(), new PasswordAlgorithmBindings(), new WidgetStrategyBindings(), new DashboardBindings(), new DecoratorBindings(), new AuditBindings(), new AlertConditionBindings(), new IndexerBindings(), new MigrationsModule());
    return modules.build();
}
Also used : IndexerBindings(org.graylog2.indexer.IndexerBindings) PersistenceServicesBindings(org.graylog2.bindings.PersistenceServicesBindings) ImmutableList(com.google.common.collect.ImmutableList) ServerBindings(org.graylog2.bindings.ServerBindings) DecoratorBindings(org.graylog2.decorators.DecoratorBindings) ConfigurationModule(org.graylog2.bindings.ConfigurationModule) AlarmCallbackBindings(org.graylog2.bindings.AlarmCallbackBindings) ObjectMapperModule(org.graylog2.shared.bindings.ObjectMapperModule) MessageFilterBindings(org.graylog2.bindings.MessageFilterBindings) MessageProcessorModule(org.graylog2.messageprocessors.MessageProcessorModule) MessageOutputBindings(org.graylog2.bindings.MessageOutputBindings) AlertConditionBindings(org.graylog2.alerts.AlertConditionBindings) InitializerBindings(org.graylog2.bindings.InitializerBindings) WidgetStrategyBindings(org.graylog2.bindings.WidgetStrategyBindings) RotationStrategyBindings(org.graylog2.indexer.rotation.RotationStrategyBindings) AuditBindings(org.graylog2.audit.AuditBindings) DashboardBindings(org.graylog2.dashboards.DashboardBindings) Module(com.google.inject.Module) ConfigurationModule(org.graylog2.bindings.ConfigurationModule) MessageProcessorModule(org.graylog2.messageprocessors.MessageProcessorModule) ObjectMapperModule(org.graylog2.shared.bindings.ObjectMapperModule) MigrationsModule(org.graylog2.migrations.MigrationsModule) RetentionStrategyBindings(org.graylog2.indexer.retention.RetentionStrategyBindings) MigrationsModule(org.graylog2.migrations.MigrationsModule) PasswordAlgorithmBindings(org.graylog2.bindings.PasswordAlgorithmBindings) PeriodicalBindings(org.graylog2.bindings.PeriodicalBindings) RestApiBindings(org.graylog2.shared.bindings.RestApiBindings)

Example 3 with ChainingClassLoader

use of org.graylog2.shared.plugins.ChainingClassLoader in project graylog2-server by Graylog2.

the class ClusterEventPeriodicalTest method setUpService.

@Before
public void setUpService() throws Exception {
    DateTimeUtils.setCurrentMillisFixed(TIME.getMillis());
    this.mongoConnection = mongoRule.getMongoConnection();
    MongoJackObjectMapperProvider provider = new MongoJackObjectMapperProvider(objectMapper);
    when(nodeId.toString()).thenReturn("ID");
    this.clusterEventPeriodical = new ClusterEventPeriodical(provider, mongoRule.getMongoConnection(), nodeId, new ChainingClassLoader(getClass().getClassLoader()), serverEventBus, clusterEventBus);
}
Also used : MongoJackObjectMapperProvider(org.graylog2.bindings.providers.MongoJackObjectMapperProvider) ChainingClassLoader(org.graylog2.shared.plugins.ChainingClassLoader) Before(org.junit.Before)

Example 4 with ChainingClassLoader

use of org.graylog2.shared.plugins.ChainingClassLoader in project graylog2-server by Graylog2.

the class ClusterConfigServiceImplTest method setUpService.

@Before
public void setUpService() throws Exception {
    DateTimeUtils.setCurrentMillisFixed(TIME.getMillis());
    this.mongoConnection = mongoRule.getMongoConnection();
    MongoJackObjectMapperProvider provider = new MongoJackObjectMapperProvider(objectMapper);
    when(nodeId.toString()).thenReturn("ID");
    this.clusterConfigService = new ClusterConfigServiceImpl(provider, mongoRule.getMongoConnection(), nodeId, new ChainingClassLoader(getClass().getClassLoader()), clusterEventBus);
}
Also used : MongoJackObjectMapperProvider(org.graylog2.bindings.providers.MongoJackObjectMapperProvider) ChainingClassLoader(org.graylog2.shared.plugins.ChainingClassLoader) Before(org.junit.Before)

Example 5 with ChainingClassLoader

use of org.graylog2.shared.plugins.ChainingClassLoader in project graylog2-server by Graylog2.

the class CmdLineTool method loadPlugins.

protected Set<Plugin> loadPlugins(String pluginPath, ChainingClassLoader chainingClassLoader) {
    final File pluginDir = new File(pluginPath);
    final Set<Plugin> plugins = new HashSet<>();
    final PluginLoader pluginLoader = new PluginLoader(pluginDir, chainingClassLoader);
    for (Plugin plugin : pluginLoader.loadPlugins()) {
        final PluginMetaData metadata = plugin.metadata();
        if (capabilities().containsAll(metadata.getRequiredCapabilities())) {
            if (version.sameOrHigher(metadata.getRequiredVersion())) {
                LOG.info("Loaded plugin: {}", plugin);
                plugins.add(plugin);
            } else {
                LOG.error("Plugin \"" + metadata.getName() + "\" requires version " + metadata.getRequiredVersion() + " - not loading!");
            }
        } else {
            LOG.debug("Skipping plugin \"{}\" because some capabilities are missing ({}).", metadata.getName(), Sets.difference(plugin.metadata().getRequiredCapabilities(), capabilities()));
        }
    }
    return plugins;
}
Also used : PluginMetaData(org.graylog2.plugin.PluginMetaData) File(java.io.File) PluginLoader(org.graylog2.shared.plugins.PluginLoader) HashSet(java.util.HashSet) Plugin(org.graylog2.plugin.Plugin)

Aggregations

ChainingClassLoader (org.graylog2.shared.plugins.ChainingClassLoader)6 Before (org.junit.Before)5 ClusterConfigServiceImpl (org.graylog2.cluster.ClusterConfigServiceImpl)3 ClusterEventBus (org.graylog2.events.ClusterEventBus)3 Plugin (org.graylog2.plugin.Plugin)3 ImmutableList (com.google.common.collect.ImmutableList)2 Module (com.google.inject.Module)2 File (java.io.File)2 MongoJackObjectMapperProvider (org.graylog2.bindings.providers.MongoJackObjectMapperProvider)2 PluginConfigBean (org.graylog2.plugin.PluginConfigBean)2 PluginModule (org.graylog2.plugin.PluginModule)2 PluginBindings (org.graylog2.shared.bindings.PluginBindings)2 JmxReporter (com.codahale.metrics.JmxReporter)1 MetricRegistry (com.codahale.metrics.MetricRegistry)1 InstrumentedAppender (com.codahale.metrics.log4j2.InstrumentedAppender)1 JadConfig (com.github.joschi.jadconfig.JadConfig)1 ParameterException (com.github.joschi.jadconfig.ParameterException)1 Repository (com.github.joschi.jadconfig.Repository)1 RepositoryException (com.github.joschi.jadconfig.RepositoryException)1 ValidationException (com.github.joschi.jadconfig.ValidationException)1