Files
qbit-template-data/src/main/java/com/kingsrook/qbits/example/sync/ExampleDataSyncProcessMetaDataProducer.java
james.maes b8ed33985d feat(release): migrate data template to QQQ 4.0 (#4)
* fix(template): complete QQQ 4.0 data migration

* fix(ci): avoid interactive package restart prompts

* docs: align guides and examples with QQQ 4.0

* docs(release): finalize QQQ 4.0 template instructions

Refs QRun-IO/qqq#631.
2026-09-24 13:32:11 -05:00

45 lines
2.0 KiB
Java

/*******************************************************************************
** MetaData producer for the example data sync process.
*******************************************************************************/
package com.kingsrook.qbits.example.sync;
import java.util.List;
import com.kingsrook.qqq.backend.core.exceptions.QException;
import com.kingsrook.qqq.backend.core.model.metadata.MetaDataProducerInterface;
import com.kingsrook.qqq.backend.core.model.metadata.QInstance;
import com.kingsrook.qqq.backend.core.model.metadata.code.QCodeReference;
import com.kingsrook.qqq.backend.core.model.metadata.fields.QFieldMetaData;
import com.kingsrook.qqq.backend.core.model.metadata.fields.QFieldType;
import com.kingsrook.qqq.backend.core.model.metadata.processes.QBackendStepMetaData;
import com.kingsrook.qqq.backend.core.model.metadata.processes.QFunctionInputMetaData;
import com.kingsrook.qqq.backend.core.model.metadata.processes.QProcessMetaData;
public class ExampleDataSyncProcessMetaDataProducer implements MetaDataProducerInterface<QProcessMetaData>
{
public static final String NAME = "exampleDataSyncProcess";
/*******************************************************************************
** Produce the process metadata.
*******************************************************************************/
@Override
public QProcessMetaData produce(QInstance qInstance) throws QException
{
return new QProcessMetaData()
.withName(NAME)
.withLabel("Example Data Sync")
.withStepList(List.of(
new QBackendStepMetaData()
.withName("sync")
.withCode(new QCodeReference(ExampleDataSyncStep.class))
.withInputData(new QFunctionInputMetaData()
.withField(new QFieldMetaData("tableName", QFieldType.STRING))
.withField(new QFieldMetaData("naturalKeyField", QFieldType.STRING))
.withField(new QFieldMetaData("dataResourcePath", QFieldType.STRING)))
));
}
}