THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- META-INF/services/org.apache.eagle.app.spi.ApplicationProvider: support to dynamically scan and load extensible application provider using java service provider.
webapp/app/apps/${APP_TYPE}: if the application has web portal, then it could add more web code under this directory and make sure building as following in pom.xml
Code Block <build> <resources> <resource> <directory>src/main/webapp/app</directory> <targetPath>assets/</targetPath> </resource> <resource> <directory>src/main/resources</directory> </resource> </resources> <testResources> <testResource> <directory>src/test/resources</directory> </testResource> </testResources> </build>
Test
...
Application
- Extend org.apache.eagle.app.test.ApplicationTestBase and initialize injector context
- Access shared service with @Inject
- Test application lifecycle with related web resource.
Code Block | ||
---|---|---|
| ||
@Inject private SiteResource siteResource; @Inject private ApplicationResource applicationResource; // Create local site SiteEntity siteEntity = new SiteEntity(); siteEntity.setSiteId("test_site"); siteEntity.setSiteName("Test Site"); siteEntity.setDescription("Test Site for ExampleApplicationProviderTest"); siteResource.createSite(siteEntity); Assert.assertNotNull(siteEntity.getUuid()); ApplicationOperations.InstallOperation installOperation = new ApplicationOperations.InstallOperation("test_site", "EXAMPLE_APPLICATION", ApplicationEntity.Mode.LOCAL); installOperation.setConfiguration(getConf()); // Install application ApplicationEntity applicationEntity = applicationResource.installApplication(installOperation).getData(); // Start application applicationResource.startApplication(new ApplicationOperations.StartOperation(applicationEntity.getUuid())); // Stop application applicationResource.stopApplication(new ApplicationOperations.StopOperation(applicationEntity.getUuid())); // Uninstall application applicationResource.uninstallApplication(new ApplicationOperations.UninstallOperation(applicationEntity.getUuid())); try { applicationResource.getApplicationEntityByUUID(applicationEntity.getUuid()); Assert.fail("Application instance (UUID: " + applicationEntity.getUuid() + ") should have been uninstalled"); } catch (Exception ex) { // Expected exception } |
...
Management & REST API
ApplicationProviderSPILoader
...