Download presentation
Presentation is loading. Please wait.
Published byNathaniel Golden Modified over 9 years ago
1
Development Environment: Connectors Prepared by T280 Dec, 2014
2
Contents 1. SDK connectors Overview Requirements Capability data model Python lib 2.
3
SDK connectors: overview 3 OAuth2 not implemented! https://bitbucket.org/limetri/ygg/src/fb7acfadb6e07 8719b85d7bb4b77f7f3663f0923/client- installed/src/test/java/eu/limetri/ygg/client/installed /YggClientManual.java?at=default ygg-client-installed
4
SDK connectors: overview 4 User’s program (myTest) begin 1.AuthFunction 2.FunctionX 3.FunctionY 4.FunctionZ 5.…… end User’s program (myTest) begin 1.AuthFunction 2.FunctionX 3.FunctionY 4.FunctionZ 5.…… end SDK Connector (myLib) AuthFunction ( user, passw, url ) GetCapabilityTypes () GetCapabilityType ( param ) NewCapabilityType ( params ) UpdateCapabilityType ( params ) RemoveCapabilityType ( param ) GetBusinessProcesses () GetBusinessProcess ( param ) NewBusinessProcess ( params ) UpdateBusinessProcess ( params ) RemoveBusinessProcess ( param ) … SDK Connector (myLib) AuthFunction ( user, passw, url ) GetCapabilityTypes () GetCapabilityType ( param ) NewCapabilityType ( params ) UpdateCapabilityType ( params ) RemoveCapabilityType ( param ) GetBusinessProcesses () GetBusinessProcess ( param ) NewBusinessProcess ( params ) UpdateBusinessProcess ( params ) RemoveBusinessProcess ( param ) … https://bitbucket.org/fispace/core/wiki/capabilities /api GET /api/capability-types GET /api/capability-types/{capability-type} POST /api/capability-types /{capability-type} PUT /api/capability-types /{capability-type} DELETE /api/capability-types /{capability-type} GET /api/business-processes GET /api/business-processes/{business-process} POST /api/business-processes/{business-process} PUT /api/business-processes/{business-process} DELETE /api/business-processes/{business-process} … https://bitbucket.org/fispace/core/wiki/capabilities /api GET /api/capability-types GET /api/capability-types/{capability-type} POST /api/capability-types /{capability-type} PUT /api/capability-types /{capability-type} DELETE /api/capability-types /{capability-type} GET /api/business-processes GET /api/business-processes/{business-process} POST /api/business-processes/{business-process} PUT /api/business-processes/{business-process} DELETE /api/business-processes/{business-process} …
5
SDK connectors: overview 5 http://oauth.net/2/
6
SDK connectors: requirements Roles: – App developer for creating capabilities and business processes. – Business architect for creating capability types and business process templates. – User for using the capabilities. How to configure KeyCloak: An example in https://bitbucket.org/fispace/core/issue/1110/decoupled-backend- archetypehttps://bitbucket.org/fispace/core/issue/1110/decoupled-backend- archetype Schema: (https://bitbucket.org/limetri) ygg / api / src / main / resources / eu / limetri / ygg / schema / yggModel.xsdhttps://bitbucket.org/limetri (All the fields are mandatory.) OAuth2.0: http://oauth.net/2/http://oauth.net/2/ 6
7
SDK connectors: requirements Capability type: CapabilityType contains the definition of a Capability. The requestMessageType and responseMessageType should match the root element of those messages. Example: TEST SDK TESTPushMessage TESTResponseMessage classpath:/schema/domain/lg/TEST.xsd eu.fispace.api.TEST 7
8
SDK connectors: requirements Business process template: Example: MY_business_process 25 Optional the following fields, I guess: TEST SDK TESTPushMessage TESTResponseMessage classpath:/schema/domain/lg/TEST.xsd eu.fispace.api.TEST 8
9
SDK connectors: requirements Business process: Example: PIA_to_PIA_business_process_SUPPLIER 1 IT IS NECESSARY (business process template) 2 receive_shipment_status_CUSTOMER http://130.206.83.77:8080/ffv/api/capabilities/receive_shipment_status 21 3 provide_shipment_details_SUPPLIER http://37.131.251.56:8080/ffv/api/capabilities/provide_shipment_details 15 1 ReceiveRTIStatus_BOXMAN http://boxman.iml.fraunhofer.de:8092/ReceiveRTIStatus 6 9
10
SDK connectors: requirements Capability: Capability defines that a party is capable of delivering this type of feature. Example: OBSOLETE, I think Capability Registration http://localhost:8080/DEMO_CAP_REGISTRATION ID_CAPABILITY_TYPE 10
11
SDK connectors: capability data model Capability model (care with the data types!) 11
12
SDK connectors: C# http://dotnetopenauth.net/ : an OAuth client implementation in C# http://dotnetopenauth.net/ 12
13
SDK connectors: JavaScript See the Reference Guide for using the JavaScript adapter just provided by KeyCloak: http://keycloak.jboss.org/docs 13
14
SDK connectors: PHP https://github.com/fkooman/php-oauth-client http://www.pibx.de/ 14
15
SDK connectors: PYTHON Tutorial: http://www.voidspace.org.uk/python/articles/authentication.shtml#introduction Tutorial: http://www.voidspace.org.uk/python/articles/authentication.shtml#introduction For Python, PEP 8 has emerged as the style guide that most projects adhere to; it promotes a very readable and eye-pleasing coding style. Every Python developer should read it at some point; here are the most important points extracted for you: Use 4-space indentation, and no tabs. 4 spaces are a good compromise between small indentation (allows greater nesting depth) and large indentation (easier to read). Tabs introduce confusion, and are best left out. Wrap lines so that they don’t exceed 79 characters. This helps users with small displays and makes it possible to have several code files side-by-side on larger displays. Use blank lines to separate functions and classes, and larger blocks of code inside functions. When possible, put comments on a line of their own. Use docstrings. Use spaces around operators and after commas, but not directly inside bracketing constructs: a = f(1, 2) + g(3, 4). Name your classes and functions consistently; the convention is to use CamelCase for classes and lower_case_with_underscores for functions and methods. Always use self as the name for the first method argument (see A First Look at Classes for more on classes and methods). Don’t use fancy encodings if your code is meant to be used in international environments. Python’s default, UTF-8, or even plain ASCII work best in any case. Likewise, don’t use non-ASCII characters in identifiers if there is only the slightest chance people speaking a different language will read or maintain the code. import sys, os, urllib.request, dir(sys) from urllib.request import urlopen https://docs.python.org/3.4/ https://docs.python.org/3.4/howto/urllib2.html RAUTH: C:\Users\S287526\MVJ\ARI\FISPACE\Miscellanea\py\MyExamples\rauth-master\tests\...AOuth2… C:\Users\S287526\MVJ\ARI\FISPACE\Miscellanea\py\MyExamples\rauth-master\examples\..github…. 15
16
Resources FIspace SDK – Collection of plugins developed for the Eclipse platform.Eclipse – http://37.131.251.110:8080/fispace-updatesite/ http://37.131.251.110:8080/fispace-updatesite/ FIspaceStudio Tool – The binary distribution of FIspace SDK. – http://37.131.251.110:8080/fispace-studio/ http://37.131.251.110:8080/fispace-studio/ User Guides – https://bitbucket.org/fispace/apps/wiki/tutorial/getting- started/sdk-tutorial https://bitbucket.org/fispace/apps/wiki/tutorial/getting- started/sdk-tutorial – https://bitbucket.org/fispace/apps/wiki/tutorial/getting- started/FIspaceStudio-tutorial https://bitbucket.org/fispace/apps/wiki/tutorial/getting- started/FIspaceStudio-tutorial – http://dev.fispace.eu/doc/wiki/sdk http://dev.fispace.eu/doc/wiki/sdk 16
17
Thanks! Thank You!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.