2023-10-16 13:43:46 +00:00
|
|
|
package nu.marginalia.process;
|
2023-07-14 15:08:10 +00:00
|
|
|
|
|
|
|
import com.google.inject.Inject;
|
|
|
|
import com.google.inject.Singleton;
|
|
|
|
import nu.marginalia.mq.outbox.MqOutbox;
|
|
|
|
import nu.marginalia.mq.persistence.MqPersistence;
|
2023-10-14 10:07:40 +00:00
|
|
|
import nu.marginalia.mqapi.ProcessInboxNames;
|
2023-07-14 15:08:10 +00:00
|
|
|
import nu.marginalia.service.server.BaseServiceParams;
|
|
|
|
|
|
|
|
@Singleton
|
2023-08-01 20:33:30 +00:00
|
|
|
public class ProcessOutboxes {
|
|
|
|
private final MqOutbox converterOutbox;
|
|
|
|
private final MqOutbox loaderOutbox;
|
|
|
|
private final MqOutbox crawlerOutbox;
|
2023-08-25 10:52:54 +00:00
|
|
|
private final MqOutbox indexConstructorOutbox;
|
2024-11-19 18:35:01 +00:00
|
|
|
private final MqOutbox liveCrawlerOutbox;
|
2024-11-21 15:00:09 +00:00
|
|
|
private final MqOutbox exportTasksOutbox;
|
2023-07-14 15:08:10 +00:00
|
|
|
|
|
|
|
@Inject
|
2023-08-01 20:33:30 +00:00
|
|
|
public ProcessOutboxes(BaseServiceParams params, MqPersistence persistence) {
|
|
|
|
converterOutbox = new MqOutbox(persistence,
|
2023-07-21 12:28:37 +00:00
|
|
|
ProcessInboxNames.CONVERTER_INBOX,
|
2023-10-14 10:07:40 +00:00
|
|
|
params.configuration.node(),
|
2023-07-21 12:28:37 +00:00
|
|
|
params.configuration.serviceName(),
|
2023-10-14 10:07:40 +00:00
|
|
|
params.configuration.node(),
|
2023-07-21 12:28:37 +00:00
|
|
|
params.configuration.instanceUuid()
|
|
|
|
);
|
2023-08-01 20:33:30 +00:00
|
|
|
loaderOutbox = new MqOutbox(persistence,
|
2023-07-21 12:28:37 +00:00
|
|
|
ProcessInboxNames.LOADER_INBOX,
|
2023-10-14 10:07:40 +00:00
|
|
|
params.configuration.node(),
|
2023-07-21 12:28:37 +00:00
|
|
|
params.configuration.serviceName(),
|
2023-10-14 10:07:40 +00:00
|
|
|
params.configuration.node(),
|
2023-07-21 12:28:37 +00:00
|
|
|
params.configuration.instanceUuid()
|
|
|
|
);
|
2023-08-01 20:33:30 +00:00
|
|
|
crawlerOutbox = new MqOutbox(persistence,
|
2023-07-21 12:28:37 +00:00
|
|
|
ProcessInboxNames.CRAWLER_INBOX,
|
2023-10-14 10:07:40 +00:00
|
|
|
params.configuration.node(),
|
2023-07-21 12:28:37 +00:00
|
|
|
params.configuration.serviceName(),
|
2023-10-14 10:07:40 +00:00
|
|
|
params.configuration.node(),
|
2023-07-21 12:28:37 +00:00
|
|
|
params.configuration.instanceUuid()
|
|
|
|
);
|
2023-08-25 10:52:54 +00:00
|
|
|
indexConstructorOutbox = new MqOutbox(persistence,
|
|
|
|
ProcessInboxNames.INDEX_CONSTRUCTOR_INBOX,
|
2023-10-14 10:07:40 +00:00
|
|
|
params.configuration.node(),
|
2023-08-25 10:52:54 +00:00
|
|
|
params.configuration.serviceName(),
|
2023-10-14 10:07:40 +00:00
|
|
|
params.configuration.node(),
|
2023-08-25 10:52:54 +00:00
|
|
|
params.configuration.instanceUuid()
|
|
|
|
);
|
2024-11-19 18:35:01 +00:00
|
|
|
|
|
|
|
liveCrawlerOutbox = new MqOutbox(persistence,
|
|
|
|
ProcessInboxNames.LIVE_CRAWLER_INBOX,
|
|
|
|
params.configuration.node(),
|
|
|
|
params.configuration.serviceName(),
|
|
|
|
params.configuration.node(),
|
|
|
|
params.configuration.instanceUuid()
|
|
|
|
);
|
2024-11-21 15:00:09 +00:00
|
|
|
|
|
|
|
exportTasksOutbox = new MqOutbox(persistence,
|
|
|
|
ProcessInboxNames.EXPORT_TASK_INBOX,
|
|
|
|
params.configuration.node(),
|
|
|
|
params.configuration.serviceName(),
|
|
|
|
params.configuration.node(),
|
|
|
|
params.configuration.instanceUuid()
|
|
|
|
);
|
2023-07-20 19:05:16 +00:00
|
|
|
}
|
2023-08-01 20:33:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
public MqOutbox getConverterOutbox() {
|
|
|
|
return converterOutbox;
|
|
|
|
}
|
|
|
|
|
|
|
|
public MqOutbox getLoaderOutbox() {
|
|
|
|
return loaderOutbox;
|
|
|
|
}
|
|
|
|
|
|
|
|
public MqOutbox getCrawlerOutbox() {
|
|
|
|
return crawlerOutbox;
|
|
|
|
}
|
2023-08-25 10:52:54 +00:00
|
|
|
|
|
|
|
public MqOutbox getIndexConstructorOutbox() { return indexConstructorOutbox; }
|
2024-11-19 18:35:01 +00:00
|
|
|
|
|
|
|
public MqOutbox getLiveCrawlerOutbox() { return liveCrawlerOutbox; }
|
2024-11-21 15:00:09 +00:00
|
|
|
|
|
|
|
public MqOutbox getExportTasksOutbox() { return exportTasksOutbox; }
|
2023-07-14 15:08:10 +00:00
|
|
|
}
|