Smint.io Content Licensing Consumer Java Integration Core package - version 1
How to use this library to implement custom synchronization feature
Smint.io base library for synchronizing assets from our Enterprise Buying Platform to downstream targets, like Digital Asset Management (DAM) software.
This base library makes integration of the Smint.io platform and synchronization of assets from Smint.io to any target a breeze. A basic infrastructure to run one-way synchronization is provided by this library. Synchronization of meta-data and assets is targeted from Smint.io to any kind of downstream target system.
What to implement to make it fly with a synchronization target
To make it work with a sync target, you need to implement the interfaces
from the package io.smint.clapi.consumer.integration.core.target
.
Additionally, some database abstraction instances are needed, to store to and load
work data from the database. The most
important interfaces are:
How to provide your implementation to the sync library: Factory or dependency injection
In order to provide your implementation to the synchronization library framework, you need to provide a factory,
implementing the interface ISyncTargetFactory
. There is a default
implementation available as DefaultSyncTargetFactory
. This
class can be used even if you do not have any dependency injection available. Nevertheless using any DI framework
would be helpful. There is an example how to use
DefaultSyncTargetFactory
in the documentation for that class
and in the Get Started
document.
Initialize the synchronization process
Initialization is performed utilizing class SmintIoSynchronization
.
final ISmintIoSynchronization smintIoSync = new SmintIoSynchronization( new DefaultSyncTargetFactory() .setSettingsProvider(() -> settings) .setAuthTokenStorage(new MyAuthTokenStorage()) .setJobDataStorage(new MyJobStorageHandler()) .setDataFactory(new MySyncTargetDataFactory()) .setSyncTargetProvider(() -> new MySyncTarget()) ).start();