Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »


Overview

Application Management component is using to store, deploy, undeploy  Applications (Locally or Remotely) over different A-Stack (Edge/Device). This also maintains states of Deployed Applications on Edge/Device.

Models

Models
   <!-- A-Stack Model -->
        <DataModel name="AStackDetail">
            <Sid name="sysId" />
            <String name="Type" />
            <String name="Name" />
            <String name="AStackId" />
            <String name="URL" />
        </DataModel>
        <!--Application Model -->
        <DataModel Name="Application" Documentation="Application Model">
            <Sid Name="AppId" />
            <String Name="Name" />
            <String Name="Version" />
            <String Name="AppDownloadURL" />
            <String Name="AppShortName" />
            <String Name="tqlFacetName"/>
            <Boolean Name="IsTargetSchemaApplication"/>
            <Boolean Name="IsAppConfigurable" default="True" cardinality="1"/>
        </DataModel>
        <!--Application Deploy mapping Model -->
        <DataModel Name="DeployedApp" Documentation="Application mapping with A-Stack">
            <Sid Name="sysId" />
            <String Name="AppId" />
            <String Name="AStackId" />
            <String Name="State" />                      
            <DateTime Name="InstalledDate" Cardinality="1" Format="$SimpleDateFormat(yyyy-MM-dd'T'HH:mm:ss.SSS'Z')"/>
            <DateTime Name="LastActivated" Cardinality="1" Format="$SimpleDateFormat(yyyy-MM-dd'T'HH:mm:ss.SSS'Z')"/>
            <DateTime Name="LastStopped" Cardinality="1" Format="$SimpleDateFormat(yyyy-MM-dd'T'HH:mm:ss.SSS'Z')"/>
        </DataModel>


Features


As shown above Application Management is having following features in sequence.

  1. Register Application

    Request
    <RegisterApplication>
        <Application>
            <Name>HelloTQL</Name>
            <Version>1.0</Version>
            <AppDownloadURL>http://builds.atomiton.com:443/fid-downloads/HelloTQL.zip</AppDownloadURL>        
        </Application>
    </RegisterApplication>
  2. Register A-Stack

    Request
    <RegisterAStack>
        <AStackDetail>
            <Name>Device1</Name>
            <Type>Neuron</Type>
            <AStackId>MY4PCYVYAAAKYHYE4EBRZMOT</AStackId>
            <URL>http://<IP_ADDRESS_OF_Device/Edge>:<PORT/fid-AppManagement</URL>
        </AStackDetail>
    </RegisterAStack>
  3. Mapping of Application with A-Stack

    Request
    <AttachAppWithAstack>
    <DeployedApp>
    <AStackId>MY4PCYVYAAAKYHYE4EBRZMOT</AStackId>
    <AppId>MY4PMDADAAAKYHYE4F4FB6RU</AppId>
    </DeployedApp>
    </AttachAppWithAstack>
  4. Deploy Application on Registered A-Stack

    Request
    <DeployAppRemotely>
        <AppId>MY4PMDADAAAKYHYE4F4FB6RU</AppId>
        <AStackId>MY4PCYVYAAAKYHYE4EBRZMOT</AStackId>
    </DeployAppRemotely>
  5. UnDeploy Application on Registered A-Stack

    Request
    <UnDeployAppRemotely>
        <AppId>MY4PMDADAAAKYHYE4F4FB6RU</AppId>
        <AStackId>MY4PCYVYAAAKYHYE4EBRZMOT</AStackId>
    </UnDeployAppRemotely>
  6. Find Deployed Applications Details by A-Stack 

    Request
    <FindAppsByAStackId>
    	<AStackId>SADWQD3423DW342D</AStackId>
    </FindAppsByAStackId>
  7. Find A-Stacks Details by DeployedApplication

    Request
    <FindAStacksByApp>
        <AppName>HelloTQL</AppName>
        <Version>1.0</Version>
    </FindAStacksByApp>
  8. Deploy Application Locally

    Request
    <DeployApplication>
        <AppDownloadURL>http://builds.atomiton.com:443/fid-downloads/HelloTQL.zip</AppDownloadURL>
        <AppShortName>hellotql</AppShortName><!-- Get it from Find Registered Application -->
    </DeployApplication>
  9. UnDeploy Application Locally

    Request
    <UnDeployApplication>
        <AppShortName>hellotql</AppShortName>
        <tqlFacetName>MYH7I7M4AAAAUCYMFA24EIQB</tqlFacetName><!-- Get it from Find Registered Application -->
    </UnDeployApplication>
  10. Delete Application from AStack

    Request
    <DeleteAppFromAStack>
        <AppId>MY4PMDADAAAKYHYE4F4FB6RU</AppId>
        <AStackId>MY4PCYVYAAAKYHYE4EBRZMOT</AStackId>
    </DeleteAppFromAStack>
  11. Delete AllApplications from AStack

    Request
    <DeleteAllAppsFromAStack>
        <AStackId>MY4PCYVYAAAKYHYE4EBRZMOT</AStackId>
    </DeleteAllAppsFromAStack>
  12. Get Application List

    Request
    <GetApplicationList/>
  13. Get Application config Parameters (from resources/<APP_FOLDER>/config/<APP_SHORT_NAME>.config.xml, if present)

    Request
    <GetAppConfigParmaeters>
        <AppLabel><!-- Application Short Name --></AppLabel>
        <Version><!-- Application Version --></Version>
    </GetAppConfigParmaeters>
  14. Update Application config Parameters (in resources/<APP_FOLDER>/config/<APP_SHORT_NAME>.config.xml, if present)

    Request
    <UpdateAppConfigParmaeters>
        <ConfigProperties>
            <!-- All parameters received from above query -->
        </ConfigProperties>
        <AppLabel><!-- Application Short Name --></AppLabel>
    </UpdateAppConfigParmaeters>

Installation Prerequisites

This component requires sff.bundle.tqlconsole.jar in sff.auto.launch folder.

Installation

This is independent TQL project. This will be deployed as a server side to get/store the data related to Applications & A-stacks to show on ManagmentDashboard component. It should be deployed to remotely deploy Application at client (Edge/Device) end.
Default Endpoint : http://<IP_Address>:<Port>/fid-AppManagement 

  • No labels