Merge branch 'dev' into feature/QQQ-38-app-home-widgets

This commit is contained in:
2022-08-25 10:14:26 -05:00
41 changed files with 1273 additions and 410 deletions

View File

@ -22,7 +22,6 @@
package com.kingsrook.sampleapp;
import com.kingsrook.qqq.backend.core.exceptions.QException;
import com.kingsrook.qqq.backend.core.model.metadata.QInstance;
import com.kingsrook.qqq.frontend.picocli.QPicoCliImplementation;
@ -37,7 +36,8 @@ public class SampleCli
*******************************************************************************/
public static void main(String[] args)
{
new SampleCli().run(args);
int exitCode = new SampleCli().run(args);
System.exit(exitCode);
}
@ -45,31 +45,20 @@ public class SampleCli
/*******************************************************************************
**
*******************************************************************************/
private void run(String[] args)
int run(String[] args)
{
try
{
int exitCode = runForExitCode(args);
System.exit(exitCode);
QInstance qInstance = SampleMetaDataProvider.defineInstance();
QPicoCliImplementation qPicoCliImplementation = new QPicoCliImplementation(qInstance);
return (qPicoCliImplementation.runCli("my-sample-cli", args));
}
catch(Exception e)
{
e.printStackTrace();
System.exit(-1);
return (-1);
}
}
/*******************************************************************************
**
*******************************************************************************/
int runForExitCode(String[] args) throws QException
{
QInstance qInstance = SampleMetaDataProvider.defineInstance();
QPicoCliImplementation qPicoCliImplementation = new QPicoCliImplementation(qInstance);
int exitCode = qPicoCliImplementation.runCli("my-sample-cli", args);
return exitCode;
}
}

View File

@ -22,7 +22,6 @@
package com.kingsrook.sampleapp;
import com.kingsrook.qqq.backend.core.instances.QInstanceValidator;
import com.kingsrook.qqq.backend.core.model.metadata.QInstance;
import com.kingsrook.qqq.backend.javalin.QJavalinImplementation;
import io.javalin.Javalin;
@ -71,6 +70,24 @@ public class SampleJavalinServer
config.enableCorsForAllOrigins();
}).start(PORT);
javalinService.routes(qJavalinImplementation.getRoutes());
/////////////////////////////////////////////////////////////////
// set the server to hot-swap the q instance before all routes //
/////////////////////////////////////////////////////////////////
QJavalinImplementation.setQInstanceHotSwapSupplier(() ->
{
try
{
return (SampleMetaDataProvider.defineInstance());
}
catch(Exception e)
{
LOG.warn("Error hot-swapping meta data", e);
return (null);
}
});
javalinService.before(QJavalinImplementation::hotSwapQInstance);
javalinService.after(ctx ->
ctx.res.setHeader("Access-Control-Allow-Origin", "http://localhost:3000"));
}