diff --git a/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/model/metadata/fields/FieldDisplayBehavior.java b/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/model/metadata/fields/FieldDisplayBehavior.java index 5ea1cfa3..9fbdecdf 100644 --- a/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/model/metadata/fields/FieldDisplayBehavior.java +++ b/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/model/metadata/fields/FieldDisplayBehavior.java @@ -22,11 +22,45 @@ package com.kingsrook.qqq.backend.core.model.metadata.fields; +import java.util.List; +import com.kingsrook.qqq.backend.core.actions.values.ValueBehaviorApplier; +import com.kingsrook.qqq.backend.core.model.data.QRecord; +import com.kingsrook.qqq.backend.core.model.metadata.QInstance; +import com.kingsrook.qqq.backend.core.model.metadata.tables.QTableMetaData; + + /******************************************************************************* ** Interface to mark a field behavior as one to be used during generating ** display values. *******************************************************************************/ public interface FieldDisplayBehavior> extends FieldBehavior { + NoopFieldDisplayBehavior NOOP = new NoopFieldDisplayBehavior(); + /*************************************************************************** + ** + ***************************************************************************/ + @Override + @SuppressWarnings("unchecked") + default T getDefault() + { + return (T) NOOP; + } + + + /*************************************************************************** + ** a default implementation for this behavior type, which does nothing. + ***************************************************************************/ + class NoopFieldDisplayBehavior implements FieldDisplayBehavior + { + + /*************************************************************************** + ** + ***************************************************************************/ + @Override + public void apply(ValueBehaviorApplier.Action action, List recordList, QInstance instance, QTableMetaData table, QFieldMetaData field) + { + + } + } }