gitextract_s15y4lew/ ├── .github/ │ └── workflows/ │ └── gradle-wrapper-validation.yml ├── .gitignore ├── .travis.yml ├── .whitesource ├── AUTHORS ├── LICENSE.md ├── MoquiInit.properties ├── Procfile ├── Procfile.README ├── README.md ├── ReleaseNotes.md ├── SECURITY.md ├── addons.xml ├── build.gradle ├── build.xml ├── docker/ │ ├── README.md │ ├── build-compose-up.sh │ ├── clean.sh │ ├── compose-down.sh │ ├── compose-up.sh │ ├── elasticsearch/ │ │ ├── data/ │ │ │ └── README │ │ └── moquiconfig/ │ │ ├── elasticsearch.yml │ │ └── log4j2.properties │ ├── kibana/ │ │ └── kibana.yml │ ├── moqui-acme-postgres.yml │ ├── moqui-cluster1-compose.yml │ ├── moqui-mysql-compose.yml │ ├── moqui-postgres-compose.yml │ ├── moqui-run.sh │ ├── mysql-compose.yml │ ├── nginx/ │ │ └── my_proxy.conf │ ├── opensearch/ │ │ └── data/ │ │ └── nodes/ │ │ └── README │ ├── postgres-compose.yml │ ├── postgres_backup.sh │ └── simple/ │ ├── Dockerfile │ └── docker-build.sh ├── framework/ │ ├── build.gradle │ ├── data/ │ │ ├── CommonL10nData.xml │ │ ├── CurrencyData.xml │ │ ├── EntityTypeData.xml │ │ ├── GeoCountryData.xml │ │ ├── MoquiSetupData.xml │ │ ├── SecurityTypeData.xml │ │ └── UnitData.xml │ ├── entity/ │ │ ├── BasicEntities.xml │ │ ├── EntityEntities.xml │ │ ├── OlapEntities.xml │ │ ├── ResourceEntities.xml │ │ ├── Screen.eecas.xml │ │ ├── ScreenEntities.xml │ │ ├── SecurityEntities.xml │ │ ├── ServerEntities.xml │ │ ├── ServiceEntities.xml │ │ └── TestEntities.xml │ ├── lib/ │ │ └── btm-4.0.1.jar │ ├── screen/ │ │ ├── AddedEmailAuthcFactor.xml │ │ ├── EmailAuthcFactorSent.xml │ │ ├── NotificationEmail.xml │ │ ├── PasswordReset.xml │ │ ├── ScreenRenderEmail.xml │ │ └── SingleUseCode.xml │ ├── service/ │ │ └── org/ │ │ └── moqui/ │ │ ├── EmailServices.xml │ │ ├── EntityServices.xml │ │ ├── SmsServices.xml │ │ ├── impl/ │ │ │ ├── BasicServices.xml │ │ │ ├── ElFinderServices.xml │ │ │ ├── EmailServices.xml │ │ │ ├── EntityServices.xml │ │ │ ├── EntitySyncServices.xml │ │ │ ├── GoogleServices.xml │ │ │ ├── InstanceServices.xml │ │ │ ├── PrintServices.xml │ │ │ ├── ScreenServices.xml │ │ │ ├── ServerServices.xml │ │ │ ├── ServiceServices.xml │ │ │ ├── SystemMessageServices.xml │ │ │ ├── UserServices.xml │ │ │ └── WikiServices.xml │ │ └── search/ │ │ ├── ElasticSearchServices.xml │ │ └── SearchServices.xml │ ├── src/ │ │ ├── main/ │ │ │ ├── groovy/ │ │ │ │ └── org/ │ │ │ │ └── moqui/ │ │ │ │ └── impl/ │ │ │ │ ├── actions/ │ │ │ │ │ └── XmlAction.java │ │ │ │ ├── context/ │ │ │ │ │ ├── ArtifactExecutionFacadeImpl.groovy │ │ │ │ │ ├── ArtifactExecutionInfoImpl.java │ │ │ │ │ ├── CacheFacadeImpl.groovy │ │ │ │ │ ├── ContextJavaUtil.java │ │ │ │ │ ├── ElasticFacadeImpl.groovy │ │ │ │ │ ├── ExecutionContextFactoryImpl.groovy │ │ │ │ │ ├── ExecutionContextImpl.java │ │ │ │ │ ├── L10nFacadeImpl.java │ │ │ │ │ ├── LoggerFacadeImpl.groovy │ │ │ │ │ ├── MessageFacadeImpl.groovy │ │ │ │ │ ├── NotificationMessageImpl.groovy │ │ │ │ │ ├── ResourceFacadeImpl.groovy │ │ │ │ │ ├── TransactionCache.groovy │ │ │ │ │ ├── TransactionFacadeImpl.groovy │ │ │ │ │ ├── TransactionInternalBitronix.groovy │ │ │ │ │ ├── UserFacadeImpl.groovy │ │ │ │ │ ├── WebFacadeImpl.groovy │ │ │ │ │ ├── reference/ │ │ │ │ │ │ ├── BaseResourceReference.java │ │ │ │ │ │ ├── ComponentResourceReference.java │ │ │ │ │ │ ├── ContentResourceReference.groovy │ │ │ │ │ │ ├── DbResourceReference.groovy │ │ │ │ │ │ └── WrapperResourceReference.groovy │ │ │ │ │ ├── renderer/ │ │ │ │ │ │ ├── FtlMarkdownTemplateRenderer.groovy │ │ │ │ │ │ ├── FtlTemplateRenderer.java │ │ │ │ │ │ ├── GStringTemplateRenderer.groovy │ │ │ │ │ │ ├── MarkdownTemplateRenderer.groovy │ │ │ │ │ │ └── NoTemplateRenderer.groovy │ │ │ │ │ └── runner/ │ │ │ │ │ ├── GroovyScriptRunner.groovy │ │ │ │ │ ├── JavaxScriptRunner.groovy │ │ │ │ │ └── XmlActionsScriptRunner.groovy │ │ │ │ ├── entity/ │ │ │ │ │ ├── AggregationUtil.java │ │ │ │ │ ├── EntityCache.groovy │ │ │ │ │ ├── EntityConditionFactoryImpl.groovy │ │ │ │ │ ├── EntityDataDocument.groovy │ │ │ │ │ ├── EntityDataFeed.groovy │ │ │ │ │ ├── EntityDataLoaderImpl.groovy │ │ │ │ │ ├── EntityDataWriterImpl.groovy │ │ │ │ │ ├── EntityDatasourceFactoryImpl.groovy │ │ │ │ │ ├── EntityDbMeta.groovy │ │ │ │ │ ├── EntityDefinition.groovy │ │ │ │ │ ├── EntityDynamicViewImpl.groovy │ │ │ │ │ ├── EntityEcaRule.groovy │ │ │ │ │ ├── EntityFacadeImpl.groovy │ │ │ │ │ ├── EntityFindBase.groovy │ │ │ │ │ ├── EntityFindBuilder.java │ │ │ │ │ ├── EntityFindImpl.java │ │ │ │ │ ├── EntityJavaUtil.java │ │ │ │ │ ├── EntityListImpl.java │ │ │ │ │ ├── EntityListIteratorImpl.java │ │ │ │ │ ├── EntityListIteratorWrapper.java │ │ │ │ │ ├── EntityQueryBuilder.java │ │ │ │ │ ├── EntitySqlException.groovy │ │ │ │ │ ├── EntityValueBase.java │ │ │ │ │ ├── EntityValueImpl.java │ │ │ │ │ ├── FieldInfo.java │ │ │ │ │ ├── condition/ │ │ │ │ │ │ ├── BasicJoinCondition.java │ │ │ │ │ │ ├── ConditionAlias.java │ │ │ │ │ │ ├── ConditionField.java │ │ │ │ │ │ ├── DateCondition.groovy │ │ │ │ │ │ ├── EntityConditionImplBase.java │ │ │ │ │ │ ├── FieldToFieldCondition.groovy │ │ │ │ │ │ ├── FieldValueCondition.java │ │ │ │ │ │ ├── ListCondition.java │ │ │ │ │ │ ├── TrueCondition.java │ │ │ │ │ │ └── WhereCondition.groovy │ │ │ │ │ └── elastic/ │ │ │ │ │ ├── ElasticDatasourceFactory.groovy │ │ │ │ │ ├── ElasticEntityFind.java │ │ │ │ │ ├── ElasticEntityListIterator.java │ │ │ │ │ ├── ElasticEntityValue.java │ │ │ │ │ └── ElasticSynchronization.groovy │ │ │ │ ├── screen/ │ │ │ │ │ ├── ScreenDefinition.groovy │ │ │ │ │ ├── ScreenFacadeImpl.groovy │ │ │ │ │ ├── ScreenForm.groovy │ │ │ │ │ ├── ScreenRenderImpl.groovy │ │ │ │ │ ├── ScreenSection.groovy │ │ │ │ │ ├── ScreenTestImpl.groovy │ │ │ │ │ ├── ScreenTree.groovy │ │ │ │ │ ├── ScreenUrlInfo.groovy │ │ │ │ │ ├── ScreenWidgetRender.java │ │ │ │ │ ├── ScreenWidgetRenderFtl.groovy │ │ │ │ │ ├── ScreenWidgets.groovy │ │ │ │ │ └── WebFacadeStub.groovy │ │ │ │ ├── service/ │ │ │ │ │ ├── EmailEcaRule.groovy │ │ │ │ │ ├── ParameterInfo.java │ │ │ │ │ ├── RestApi.groovy │ │ │ │ │ ├── ScheduledJobRunner.groovy │ │ │ │ │ ├── ServiceCallAsyncImpl.groovy │ │ │ │ │ ├── ServiceCallImpl.java │ │ │ │ │ ├── ServiceCallJobImpl.groovy │ │ │ │ │ ├── ServiceCallSpecialImpl.groovy │ │ │ │ │ ├── ServiceCallSyncImpl.java │ │ │ │ │ ├── ServiceDefinition.java │ │ │ │ │ ├── ServiceEcaRule.groovy │ │ │ │ │ ├── ServiceFacadeImpl.groovy │ │ │ │ │ ├── ServiceJsonRpcDispatcher.groovy │ │ │ │ │ ├── ServiceRunner.groovy │ │ │ │ │ └── runner/ │ │ │ │ │ ├── EntityAutoServiceRunner.groovy │ │ │ │ │ ├── InlineServiceRunner.java │ │ │ │ │ ├── JavaServiceRunner.groovy │ │ │ │ │ ├── RemoteJsonRpcServiceRunner.groovy │ │ │ │ │ ├── RemoteRestServiceRunner.groovy │ │ │ │ │ └── ScriptServiceRunner.java │ │ │ │ ├── tools/ │ │ │ │ │ ├── H2ServerToolFactory.groovy │ │ │ │ │ ├── JCSCacheToolFactory.groovy │ │ │ │ │ ├── JackrabbitRunToolFactory.groovy │ │ │ │ │ ├── MCacheToolFactory.java │ │ │ │ │ └── SubEthaSmtpToolFactory.groovy │ │ │ │ ├── util/ │ │ │ │ │ ├── EdiHandler.groovy │ │ │ │ │ ├── ElFinderConnector.groovy │ │ │ │ │ ├── ElasticSearchLogger.groovy │ │ │ │ │ ├── JdbcExtractor.java │ │ │ │ │ ├── MoquiShiroRealm.groovy │ │ │ │ │ ├── RestSchemaUtil.groovy │ │ │ │ │ ├── SimpleSgmlReader.groovy │ │ │ │ │ └── SimpleSigner.java │ │ │ │ └── webapp/ │ │ │ │ ├── ElasticRequestLogFilter.groovy │ │ │ │ ├── GroovyShellEndpoint.groovy │ │ │ │ ├── MoquiAbstractEndpoint.groovy │ │ │ │ ├── MoquiAuthFilter.groovy │ │ │ │ ├── MoquiContextListener.groovy │ │ │ │ ├── MoquiFopServlet.groovy │ │ │ │ ├── MoquiServlet.groovy │ │ │ │ ├── MoquiSessionListener.groovy │ │ │ │ ├── NotificationEndpoint.groovy │ │ │ │ ├── NotificationWebSocketListener.groovy │ │ │ │ └── ScreenResourceNotFoundException.groovy │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── moqui/ │ │ │ │ ├── BaseArtifactException.java │ │ │ │ ├── BaseException.java │ │ │ │ ├── Moqui.java │ │ │ │ ├── context/ │ │ │ │ │ ├── ArtifactAuthorizationException.java │ │ │ │ │ ├── ArtifactExecutionFacade.java │ │ │ │ │ ├── ArtifactExecutionInfo.java │ │ │ │ │ ├── ArtifactTarpitException.java │ │ │ │ │ ├── AuthenticationRequiredException.java │ │ │ │ │ ├── CacheFacade.java │ │ │ │ │ ├── ElasticFacade.java │ │ │ │ │ ├── ExecutionContext.java │ │ │ │ │ ├── ExecutionContextFactory.java │ │ │ │ │ ├── L10nFacade.java │ │ │ │ │ ├── LogEventSubscriber.java │ │ │ │ │ ├── LoggerFacade.java │ │ │ │ │ ├── MessageFacade.java │ │ │ │ │ ├── MessageFacadeException.java │ │ │ │ │ ├── MoquiLog4jAppender.java │ │ │ │ │ ├── NotificationMessage.java │ │ │ │ │ ├── NotificationMessageListener.java │ │ │ │ │ ├── PasswordChangeRequiredException.java │ │ │ │ │ ├── ResourceFacade.java │ │ │ │ │ ├── ScriptRunner.java │ │ │ │ │ ├── SecondFactorRequiredException.java │ │ │ │ │ ├── TemplateRenderer.java │ │ │ │ │ ├── ToolFactory.java │ │ │ │ │ ├── TransactionException.java │ │ │ │ │ ├── TransactionFacade.java │ │ │ │ │ ├── TransactionInternal.java │ │ │ │ │ ├── UserFacade.java │ │ │ │ │ ├── ValidationError.java │ │ │ │ │ ├── WebFacade.java │ │ │ │ │ └── WebMediaTypeException.java │ │ │ │ ├── entity/ │ │ │ │ │ ├── EntityCondition.java │ │ │ │ │ ├── EntityConditionFactory.java │ │ │ │ │ ├── EntityDataLoader.java │ │ │ │ │ ├── EntityDataWriter.java │ │ │ │ │ ├── EntityDatasourceFactory.java │ │ │ │ │ ├── EntityDynamicView.java │ │ │ │ │ ├── EntityException.java │ │ │ │ │ ├── EntityFacade.java │ │ │ │ │ ├── EntityFind.java │ │ │ │ │ ├── EntityList.java │ │ │ │ │ ├── EntityListIterator.java │ │ │ │ │ ├── EntityNotFoundException.java │ │ │ │ │ ├── EntityValue.java │ │ │ │ │ └── EntityValueNotFoundException.java │ │ │ │ ├── etl/ │ │ │ │ │ ├── FlatXmlExtractor.java │ │ │ │ │ └── SimpleEtl.java │ │ │ │ ├── jcache/ │ │ │ │ │ ├── MCache.java │ │ │ │ │ ├── MCacheConfiguration.java │ │ │ │ │ ├── MCacheManager.java │ │ │ │ │ ├── MEntry.java │ │ │ │ │ └── MStats.java │ │ │ │ ├── resource/ │ │ │ │ │ ├── ClasspathResourceReference.java │ │ │ │ │ ├── ResourceReference.java │ │ │ │ │ └── UrlResourceReference.java │ │ │ │ ├── screen/ │ │ │ │ │ ├── ScreenFacade.java │ │ │ │ │ ├── ScreenRender.java │ │ │ │ │ └── ScreenTest.java │ │ │ │ ├── service/ │ │ │ │ │ ├── ServiceCall.java │ │ │ │ │ ├── ServiceCallAsync.java │ │ │ │ │ ├── ServiceCallJob.java │ │ │ │ │ ├── ServiceCallSpecial.java │ │ │ │ │ ├── ServiceCallSync.java │ │ │ │ │ ├── ServiceCallback.java │ │ │ │ │ ├── ServiceException.java │ │ │ │ │ └── ServiceFacade.java │ │ │ │ └── util/ │ │ │ │ ├── CollectionUtilities.java │ │ │ │ ├── ContextBinding.java │ │ │ │ ├── ContextStack.java │ │ │ │ ├── LiteStringMap.java │ │ │ │ ├── MClassLoader.java │ │ │ │ ├── MNode.java │ │ │ │ ├── ObjectUtilities.java │ │ │ │ ├── RestClient.java │ │ │ │ ├── SimpleTopic.java │ │ │ │ ├── StringUtilities.java │ │ │ │ ├── SystemBinding.java │ │ │ │ └── WebUtilities.java │ │ │ ├── resources/ │ │ │ │ ├── META-INF/ │ │ │ │ │ ├── jakarta.mime.types │ │ │ │ │ └── services/ │ │ │ │ │ └── org.moqui.context.ExecutionContextFactory │ │ │ │ ├── MoquiDefaultConf.xml │ │ │ │ ├── bitronix-default-config.properties │ │ │ │ ├── cache.ccf │ │ │ │ ├── log4j2.xml │ │ │ │ ├── org/ │ │ │ │ │ └── moqui/ │ │ │ │ │ └── impl/ │ │ │ │ │ ├── pollEmailServer.groovy │ │ │ │ │ ├── sendEmailMessage.groovy │ │ │ │ │ └── sendEmailTemplate.groovy │ │ │ │ └── shiro.ini │ │ │ └── webapp/ │ │ │ └── WEB-INF/ │ │ │ └── web.xml │ │ ├── start/ │ │ │ └── java/ │ │ │ └── MoquiStart.java │ │ └── test/ │ │ └── groovy/ │ │ ├── CacheFacadeTests.groovy │ │ ├── ConcurrentExecution.groovy │ │ ├── EntityCrud.groovy │ │ ├── EntityFindTests.groovy │ │ ├── EntityNoSqlCrud.groovy │ │ ├── L10nFacadeTests.groovy │ │ ├── MessageFacadeTests.groovy │ │ ├── MoquiSuite.groovy │ │ ├── ResourceFacadeTests.groovy │ │ ├── ServiceCrudImplicit.groovy │ │ ├── ServiceFacadeTests.groovy │ │ ├── SubSelectTests.groovy │ │ ├── SystemScreenRenderTests.groovy │ │ ├── TimezoneTest.groovy │ │ ├── ToolsRestApiTests.groovy │ │ ├── ToolsScreenRenderTests.groovy │ │ ├── TransactionFacadeTests.groovy │ │ └── UserFacadeTests.groovy │ ├── template/ │ │ └── XmlActions.groovy.ftl │ └── xsd/ │ ├── common-types-3.xsd │ ├── email-eca-3.xsd │ ├── entity-definition-3.xsd │ ├── entity-eca-3.xsd │ ├── framework-catalog.xml │ ├── moqui-conf-3.xsd │ ├── rest-api-3.xsd │ ├── service-definition-3.xsd │ ├── service-eca-3.xsd │ ├── xml-actions-3.xsd │ ├── xml-form-3.xsd │ └── xml-screen-3.xsd ├── gradle/ │ └── wrapper/ │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradle.properties ├── gradlew ├── gradlew.bat └── settings.gradle