Skip to content

Latest commit

 

History

40 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Плагин соты

Плагин соты - это тип, реализующий обработку одного или более форматов структурирования данных в одном или более протоколе передачи данных. То есть, один плагин может реализовать обработку как и какого-то конкретного концепта (например, поддержка atom feed xml over http), так и нескольких (например, поддержка rss feed: atom xml over http, OData over http, OData over tcp, etc).

Цикл жизни

Экземпляр каждого плагина существует в единственном экземпляре (Singleton) на протяжении всей жизни улья. Экземпляр создаётся во время инициализации улья, после инициализации вызывается метод .configure(Config config), в который передаётся секция конфигурационного файла, относящаяся к данному плагину (адресация по полному имени класса плагина). После инициализации экземпляр плагина передаётся во все создаваемые соты, соответственно параметризации поддерживаемой обработки, в качестве обработчика входящих данных.

В рабочем цикле сота, при накоплении некоего массива данных, первым шагом передаёт плагину обработчик, которому следует передать структуру Log Entry, сформированную в процессе работы. Вторым шагом сота передаёт сам накопленный пакет данных путём вызова метода

chunk(byte[] data, DataAddress source)

где data - это данные, source - источник данных.

Реализация

В общем случае, для поддержки любой конфигурации достаточно реализовать контракт класса ru.gang.logdoc.sdk.SinkPlugin, разместить соответствующий jar в classpath улья и указать имя класса в конфиге, в секции logdoc.plugins.sinks - при следующей инициализации улья плагин будет загружен и управляющие модули получат возможность открывать в этом улье соты с реализованной обработкой.

Использование

    <dependency>
        <groupId>org.logdoc</groupId>
        <artifactId>sink-plugins</artifactId>
        <version>1.0.5</version>
    </dependency>

About

Плагины сот

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages