Checkpoint; bulkInsert working; some api instance validation

This commit is contained in:
2023-03-22 15:12:12 -05:00
parent 8ea571ccf7
commit 4da3cc9206
10 changed files with 730 additions and 35 deletions

View File

@ -168,7 +168,7 @@ public class QInstanceValidator
{
for(QMiddlewareInstanceMetaData middlewareInstanceMetaData : CollectionUtils.nonNullMap(qInstance.getMiddlewareMetaData()).values())
{
middlewareInstanceMetaData.validate(qInstance);
middlewareInstanceMetaData.validate(qInstance, this);
}
}

View File

@ -22,6 +22,7 @@
package com.kingsrook.qqq.backend.core.model.metadata;
import com.kingsrook.qqq.backend.core.instances.QInstanceValidator;
import com.kingsrook.qqq.backend.core.model.metadata.tables.QTableMetaData;
@ -80,7 +81,7 @@ public abstract class QMiddlewareInstanceMetaData
/*******************************************************************************
**
*******************************************************************************/
public void validate(QInstance qInstance)
public void validate(QInstance qInstance, QInstanceValidator validator)
{
////////////////////////
// noop in base class //

View File

@ -24,6 +24,7 @@ package com.kingsrook.qqq.backend.core.utils.collections;
import java.util.HashMap;
import java.util.Map;
import java.util.function.Supplier;
/*******************************************************************************
@ -31,8 +32,52 @@ import java.util.Map;
** NPE's on nulls... So, replace it with this, which returns HashMaps, which
** "don't suck"
*******************************************************************************/
public class MapBuilder
public class MapBuilder<K, V>
{
private Map<K, V> map;
/*******************************************************************************
**
*******************************************************************************/
private MapBuilder(Map<K, V> map)
{
this.map = map;
}
/*******************************************************************************
**
*******************************************************************************/
public static <K, V> MapBuilder<K, V> of(Supplier<Map<K, V>> mapSupplier)
{
return (new MapBuilder<>(mapSupplier.get()));
}
/*******************************************************************************
**
*******************************************************************************/
public MapBuilder<K, V> with(K key, V value)
{
map.put(key, value);
return (this);
}
/*******************************************************************************
**
*******************************************************************************/
public Map<K, V> build()
{
return (this.map);
}
/*******************************************************************************
**