iDempiere Kafka Plugin
- Copyright: 2020 INGEINT https://www.ingeint.com
- Repository: https://github.com/ingeint/idempiere-kafka-plugin
- License: GPL 2
Description
This plugin is an example of using kafka comsumer/producer client with iDempiere.
Contributors
Components
- iDempiere Plugin com.ingeint.kafka
- iDempiere Unit Test Fragment com.ingeint.kafka.test
- iDempiere Target Platform com.ingeint.kafka.targetplatform
Prerequisites
- Java 11, commands
java
andjavac
. - iDempiere 7.1.0
- Set
IDEMPIERE_REPOSITORY
env variable - GNU make
Features/Documentation
This example does not include
- Idempotent producer
- Security
- Key, Partitions, Replicas, Cluster management
Partner Producer
This plugin sends a BPartner to the kafka topic partnerFromInternalProducer
every time a new partne is created or updated. See the class PartnerKafkaProducer
and NewPartnerEvent
.
Some captures from iDempiere and Kafkatool:
Partner Consumer
This plugin consumes a BPartner to the kafka topic partnerFromExternalProducer
every time a new partne is created or updated. See the class PartnerKafkaConsumer
and PluginKafkaActivator
.
Also we add a java application in random-partner-producer.
cd random-partner-producer
./gradlew run
Instructions
Clone project :
git clone https://github.com/ingeint/idempiere-kafka-plugin.git
Updating submodule:
cd idempiere-kafka-plugin
git submodule init
git submodule update
Building kafka docker:
cd kafka-docker
make build
Runing kafka:
docker swarm init
make run
Extra Links
- Kafka
- Kafka Docker
- CLI Kafkacat
- GUI Kafka Tool
- GUI Conduktor
Commands
Compile plugin and run tests:
./build
Use the parameter debug
for debug mode example:
./build debug
To use .\build.bat
for windows.