template.base.javaTemplate.vsl Maven / Gradle / Ivy
## Velocity Template.
## Copyright (C) 2024 gregory higgins
/*
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the Server Side Public License, version 1,
* as published by MongoDB, Inc.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* Server Side License for more details.
*
* You should have received a copy of the Server Side Public License
* along with this program. If not, see
*
.
*/
package ${package};
import com.fluxtion.runtime.StaticEventProcessor;
import com.fluxtion.runtime.lifecycle.BatchHandler;
import com.fluxtion.runtime.lifecycle.Lifecycle;
import com.fluxtion.runtime.EventProcessor;
import com.fluxtion.runtime.callback.InternalEventProcessor;
#if(${MODEL.imports})
${MODEL.imports}
#end
import java.util.IdentityHashMap;
import java.util.function.BooleanSupplier;
import java.util.function.Consumer;
/**
*
* generation time : ${build_time}
* eventProcessorGenerator version : ${generator_version_information}
* api version : ${api_version_information}
*
* Event classes supported:
*
${MODEL.javaDocEventClassList}
*
* @author Greg Higgins
*/
@SuppressWarnings({"unchecked", "rawtypes"})
public class ${className} implements
EventProcessor<${className}>, ${MODEL.additionalInterfaces} StaticEventProcessor, InternalEventProcessor, BatchHandler, Lifecycle {
//Node declarations
${MODEL.nodeDeclarations}
private final ExportFunctionAuditEvent functionAudit = new ExportFunctionAuditEvent();
//Dirty flags
private boolean initCalled = false;
private boolean processing = false;
private boolean buffering = false;
private final IdentityHashMap