Python and FME REST Rob Gaston

Slides:



Advertisements
Similar presentations
An Enterprise Street Addressing System Using Open Source Paul E. McCullough City and County of San Francisco gmail - p.e.mccullough slides -
Advertisements

EAS: San Francisco’s Enterprise Addressing System
Test Automation Framework Ashesh Jain 2007EE50403 Manager Amit Maheshwari.
Bridging the gap How Presentation Server connects C/S and SOA Citrix Systems Inc., Aug Christian Ambach Citrix Systems Inc., Aug Christian.
ModelBuilder In ArcGIS 9.x By Tim Weigel GEOG 407/607 April 3 rd, 2006.
Robofest 2001 Online Management System Jim Needham MCS 4833/01 Senior Project Dr. Chan-Jin Chung, Ph.D.
Managing Data Interoperability with FME Tony Kent Applications Engineer IMGS.
ETL for GIS - What's it all about? 2009 Ohio GIS Conference September 16-18, 2009 Crowne Plaza North Hotel Columbus, Ohio 2009 Ohio GIS Conference September.
 2000 Deitel & Associates, Inc. All rights reserved. Chapter 24 – Web Servers (PWS, IIS, Apache, Jigsaw) Outline 24.1Introduction 24.2Microsoft Personal.
Enterprise ETL & the Home Again
© 2012 WIPRO LTD | 1 Version 1.0a, 23 rd April 2012 TTCN-3 Users Conference Practical integration of TTCN-3 with Robot test automation framework.
Putting What We Learned Into Context – WSGI and Web Frameworks A290/A590, Fall /16/2014.
MuPIT Interactive - Programmatic Link to MuPIT Exercise: Find a protein structure and its amino residue where the genomic location chr17: maps to,
Business Unit or Product Name © 2007 IBM Corporation Introduction of Autotest Qing Lin.
Python and REST Kevin Hibma. What is REST? Why REST? REST stands for Representational State Transfer. (It is sometimes spelled "ReST".) It relies on a.
April 30, 2007 openSUSE.org Build Service a short introduction Moiz Kohari VP Engineering.
MySQL and PHP Internet and WWW. Computer Basics A Single Computer.
Leveraging ArcGIS Online Elevation and Hydrology Services
Enhanced Parcel Queries in Kansas Kristen Jordan.
Advance Map Automation With Python
My Motorola Experience (Round 2) July 31, 2014 Erich Kuerschner| 2014 Summer Intern Service Automation, MOTOROLA SOLUTIONS iProtect Classification as Appropriate.
Some Design Notes Iteration - 2 Method - 1 Extractor main program Runs from an external VM Listens for RabbitMQ messages Starts a light database engine.
Esri UC 2014 | Technical Workshop | Python Map Automation – Beyond the Basics of arcpy.mapping Jeff Barrette Jeff Moulds.
ABUG Harding April 24 th Searcy, AR 1 e~Print - Innovative Ways We Use It Presented by: Bruce Knox University of Arkansas Division of Agriculture.
© 2004 OPNET Technologies, Inc. All rights reserved. OPNET and OPNET product names are trademarks of OPNET Technologies, Inc. ARMing Apache David Carter.
Google Application Engine Introduction Jim Eng with thanks to Charles Severance
How to use mrtg to monitor traffic on your wireless and wired network a bella mia company.
Maite Barroso - 10/05/01 - n° 1 WP4 PM9 Deliverable Presentation: Interim Installation System Configuration Management Prototype
Nguyen Tuan Anh Page 1 Grid Computing – Master Course 2007 Grid Computing Dr. Nguyen Tuan Anh Contacts: Tel: (84-8)
"Data sources index" a web application to list projects in Hadoop Luca Menichetti.
K. Harrison CERN, 22nd September 2004 GANGA: ADA USER INTERFACE - Ganga release status - Job-Options Editor - Python support for AJDL - Job Builder - Python.
Presented by: Marianne Cardwell, Woolpert, Inc. Cheryl Spencer, City of Indianapolis February 23, 2010 Voter Information Portal.
An Enterprise Street Addressing System Using Open Source Paul E. McCullough City and County of San Francisco gmail – p{dot}e{dot}mccullough slides - tinyurl.com/26cuhcj.
1 Integration of the LCP Reporting Into the E-PRTR Scope and Technical proposal November 3rd.
Problem Types Numeric Formula String Multiple choice Image input Grade via evaluation using multiple sets of probe values Can use regexp to validate answer.
1 Integration of the LCP Reporting Into the E-PRTR Scope and Technical specifications December 3rd.
DDM Central Catalogs and Central Database Pedro Salgado.
Lists in Python Lists as Arguments/Parameters. Lists as arguments to functions Just like other data types, lists can be sent to functions as arguments.
Scan System Update Kay Kasemir, May Managed by UT-Battelle for the U.S. Department of Energy Scan Server Sample Environment Equipments Sample Environment.
Status Report Hans Wenzel Geant4 Validation repository weekly meeting 13 th April 2016.
Esri UC 2014 | Technical Workshop | Administering ArcGIS for Server with Python Jon Bodamer.
REST API Design. Application API API = Application Programming Interface APIs expose functionality of an application or service that exists independently.
Improving FME Productivity with Python Jim O’Leary Programmer / Analyst, City of Vancouver.
New Superpowers for FME Server Mark Stoakes Manager, Professional Services.
REDCap External Modules
AUTOMATED PAYOFF REQUESTS
Achieving Automated Mapping of Seismic Acquisition Data Using FME
Take a REST from manual searching: PDBe, programmatically
Automating with Job Streams
z/Ware 2.0 Technical Overview
e~Print - Innovative Ways We Use It
Configuration Store in ONAP using Distributed KV Store (As part of making ONAP carrier grade) Consul.
String Manipulation.
Voter Information Portal
Chapter 9 Web Services: JAX-RPC, WSDL, XML Schema, and SOAP
Exploring the Power of EPDM Tasks - Working with and Developing Tasks in EPDM By: Marc Young XLM Solutions
Comparing Strings – How to
In this session… Introduce what we’re talking about
Python Map Automation – Beyond the Basics of arcpy.mapping
Configuration Management at its peak with
Leveraging ArcGIS Online Elevation and Hydrology Services
Python Map Automation – Beyond the Basics of arcpy.mapping
SALES RECEIPT Downloaded from
Python and REST Kevin Hibma.
INVOICE Downloaded from
How to Address an Envelope
Issues with servers availablity and/or capacity
CSE 231 Lab 15.
DIBBs Brown Dog BDFiddle
Thanks to our Sponsors Platinum Sponsor: Gold Sponsors:
Presentation transcript:

Python and FME REST Rob Gaston Web Developer; Farallon Geographics, Inc. April 9, 2013

San Francisco EAS EAS is an open source system for maintaining address data At the City and County of San Francisco, FME is being used to ETL parcel and street data used by EAS EAS uses FME Server REST API to check the status of ETL jobs before staging new data

EAS, Python and FME EAS makes calls to FME Server REST API via automation scripts written in Python Python is used in EAS both on the backend of the web application and for automation To support automation of calls to FME Server REST services, we built a Python class (FmeServerHelper)

Checking for an FME Workspace with Python Without FmeServerHelper With FmeServerHelper

fme_server_helper.py

FmeServerHelper API doesJobExist - Checks to see if FME workspace exists on this host isJobRunning - Checks to see if FME workspace is currently running on this host isJobQueued - Checks to see if FME workspace is currently queued to run on this host getLatestCompletedJob - Gets the data from FME Server for the last job from a given workspace getJobId - Gets the string id from a FME Server job getJobStatus - Gets the string job status from a FME Server job Get the code: https://code.google.com/p/eas/source/browse/trunk/automation/src/fme_server_helper.py

FmeServerHelper API Documentation doesJobExist(jobDict) : Boolean Checks to see if FME workspace exists on this host PARAMETERS: jobDict: Dict - a dictionary containing the workspace and repository names RETURNS: Boolean - the existence state of this workspace on this host isJobRunning(jobDict) : Boolean Checks to see if FME workspace is currently running on this host Boolean - the running state of this workspace on this host isJobQueued(jobDict) : Boolean Checks to see if FME workspace is currently queued to run on this host Boolean - the queued state of this workspace on this host getLatestCompletedJob(jobDict) : Dict Gets the data from FME Server for the last job from a given workspace PARAMETERS: jobDict: Dict - a dictionary containing the workspace and repository names RETURNS: Dict - a dictionary containing job data from FME Server getJobId(job) : String Gets the string id from a FME Server job job: Dict - a dictionary containing job data from FME Server String - the job id getJobStatus(job) : String Gets the string job status from a FME Server job job: Dict - a dictionary containing job data from FME server String - the job status Get the code: https://code.google.com/p/eas/source/browse/trunk/automation/src/fme_server_helper.py

What’s Next…? Following the principle of DTSTTCPW (do the simplest thing that could possibly work), FmeServerHelper only currently supports the use cases required by EAS Since EAS is open source, anyone with the time and inclination to create a more complete API for working with FME Server can use fme_server_helper.py as a jumping off point So… get to work and have fun!

Thank You! Questions? For more information: Rob Gaston, rgaston(at)fargeo(dot)com Farallon Geographics, Inc. http://www.fargeo.com/ https://code.google.com/p/eas/