10
1 Backup slides - Deployment SynapseIndia Mobile Apps Deployment Framework internal architecture

SynapseIndia mobile apps deployment framework internal architecture

Embed Size (px)

Citation preview

Page 1: SynapseIndia mobile apps deployment framework internal architecture

1

Backup slides - Deployment

SynapseIndia Mobile Apps Deployment Framework internal architecture

Page 2: SynapseIndia mobile apps deployment framework internal architecture

2 17.02.2006

Device Management control flow

Device Management Device Management ImplementationImplementation

Device Management Device Management ImplementationImplementation

MTJ Core MTJ Core Plug-inPlug-in

MTJ Core MTJ Core Plug-inPlug-in

3: getImplementations(“Device Platform”)

return: DevicePlatformProvider [ ]

OutOut OutOut

2: getDevices(devicePlatformName)

1: getImplementations(“Device Management”)

return: DeviceManagement [ ]

Device Device PlatformPlatformDevice Device

PlatformPlatform

4: getDevices()

return: Device [ ]

5: getImplementations(“Device Description”)

return: DeviceDescriptionProvider [ ]

Device Device Description Impl.Description Impl.

Device Device Description Impl.Description Impl.

6: getDeviceDescription( String vendor, String model)

return: DeviceDescription

return: Device [ ]

Page 3: SynapseIndia mobile apps deployment framework internal architecture

3 17.02.2006

Device Platform ServicesDevice Platform Services

Device Platform ServicesDevice Platform Servicesi/f

getDevicePlatforms() : DevicePlatform[]getDevices(String devicePlatformName) : Device[]...

Device Platform, Device Platform Services

• Device Platform Services make it possible to query available Device Platforms.• Based on Device Platform name it’s possible to get Devices or the Platform.

Page 4: SynapseIndia mobile apps deployment framework internal architecture

4 17.02.2006

Device Platform

DevicePlatformTypetype

Configuration

ConfigurationItemnamelabeldescriptionvaluevalidValues : String[]

1..*1..*

ConfigurationError

errorTypedescription

0..*0..*

+item

11

Devicename : Stringdescription : String

DevicePlatform

getName() : StringgetDevices() : Device[]getConfiguration() : PlatformConfigurationsetConfiguration(PlatformConfiguration config)deploy(Deployment application, DeviceDeployment[] devices)run(String application, String deviceName)debug(String application, String deviceName, DebugConfiguration debugConfig)isDebugEnabled() : booleanisAccessable() : booleangetTypeInfo() : DevicePlatformTypeopenPreferencesDialog()isPreferencesDialogAvailable() : booleanopenUtilitesDialog()isUtilitesDialogAvailable() : booleangetRuntimePlatformDefinitions() : RuntimePlatformDefinition[]

1..*1..*

11

11

Runtime Platform Definitionname

1..*1..*

Page 5: SynapseIndia mobile apps deployment framework internal architecture

5 17.02.2006

Device

Screen

widthheightisColorbitDepthisTouch

DeviceCommunicationProtocol

Configuration

ConfigurationItem

namelabeldescriptionv aluev alidValues : String[]

1..*1..*

ConfigurationError

errorTy pedescription

0..*0..*

+item

11

Runtime Platform Definition

name

Device

name : Stringdescription : String

1

+screen

1

1..*1..*

11+runtimes

1..*

1..*

1..*

1..*

Page 6: SynapseIndia mobile apps deployment framework internal architecture

6 17.02.2006

Runtime Platform

DeviceComfiguration Implementation(from mtj)

JavaVirtualMachine Specification

(from mtj)

ImplementationReffileRef : StringsourceRef : StringjavadocRef : String

DeviceProfileAPI

Device OS Application

Device OS Application UI

0..10..1

OptionalServiceAPI

11..*1..*

1

DeviceProfilenameprofi le nameprofi le version

1..*1..*

defines

Device OSnameversion

0..*0..*

DeviceConfiguration Specification

nameconfiguration nameconfiguration version

1

1..*

+specification1

1..*

11 defines

11

isExpanding

Runtime Platform Definitionname

11

11

Devicename : Stringdescription : String

+runtimes

1..*

1..*

1..*

Java API

nameversion

1..*

+apis

1..*

1..*

EmulatorDeviceRealDevice

model1..*1..*

supports

11

JavaVirtualMachine Implementation(from mtj)

11 isUsing

1..*

0..*

1..*

0..*

implements

0..*1..* 0..*1..*

1

0..*

1

+javaRuntime

JVM ReffileRef : StringsourceRef : StringjavadocRef : String

0..*

Page 7: SynapseIndia mobile apps deployment framework internal architecture

7 17.02.2006

ProjectJava APInameversion

JavaVirtualMachine Implementation

ImplementationReffileRef : StringsourceRef : StringjavadocRef : String

JVM ReffileRef : StringsourceRef : StringjavadocRef : String

DeviceProfilenameprofile nameprofile version

DeviceConfiguration Specificationnameconfiguration nameconfiguration version

Project

1..*1..*

11

Runtime Platform Definitionname

11

11

11

1..* +apis1..*

0..*

1

0..*

+javaRuntime1

Devicename : Stringdescription : String

1..*1..*

+runtimes

1..*

1..*

1..*

1..*

Page 8: SynapseIndia mobile apps deployment framework internal architecture

8

Code Editor

Code Editor internal architecture

Page 9: SynapseIndia mobile apps deployment framework internal architecture

9 17.02.2006

Code Editor architecture tbd

Page 10: SynapseIndia mobile apps deployment framework internal architecture

10 17.02.2006

DeviceDeviceDP

APIs

DC

ProjectProject ProjectProject

DP

APIs

DC

Project

1

Library Jar Library Jar

1..n

Library Jar Library Jar

1

1

• Mobile Project development is targeted to devices that have certain Device Configuration and Device Profile. Therefore MTJ’s Project has also Device Configuration and Device Profile defined.• It’s possible to select a set of Service APIs to the Project. Based on the selected set of APIs corresponding Jar –libraries are added to the project.• Project always has default device that matches to the Projects definitions. That default device also gives the needed Jar –libraries to the Project.

LEGEND:

DP

DC

DP

APIs

DC •Project’s defined Device Configuration

•Project’s defined Device Profile

•Service APIs that are selected to the Project

•Device’s Device Configuration

•Device’s Device Profile

•Service APIs that are supported by the Device

APIs

Mobile SDK Emulator