(1) The (Draft) Public Client API for Device-Oriented Middleware Communication The Middleware Project Team.

Slides:



Advertisements
Similar presentations
CMW CORBA-based Controls Middleware at CERN
Advertisements

STRING AN EXAMPLE OF REFERENCE DATA TYPE. 2 Primitive Data Types  The eight Java primitive data types are:  byte  short  int  long  float  double.
Controls Middleware (CMW) Presentation to the Controls Board The Middleware Team October 31, 2000.
13/04/2015Client-server Programming1 Block 6: Threads 1 Jin Sa.
Wojciech Buczak, Wojciech Sliwinski BE-CO-IN for the Middleware team Vito Baggiolini, Roman Gorbonosov BE-CO-DA.
Remote Procedure CallCS-4513, D-Term Remote Procedure Call CS-4513 Distributed Computing Systems (Slides include materials from Operating System.
Chapter 2: Communications
João Frazão Rescue Project Software Architecture João Frazão.
Persistent State Service 1 Performance, Scalability and Management  Topic  Refining the object model  Threading models  Distributed callbacks  Iterators.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
1 JBus, A Platform Independent Publish/Subscribe Bus for CWave 2000 M.S. Thesis Defense Joseph W. Longson March 30, 2000.
CORBA Case Study By Jeffrey Oliver March March 17, 2003CORBA Case Study by J. T. Oliver2 History The CORBA (Common Object Request Broker Architecture)
OCT 1 Master of Information System Management Organizational Communications and Distributed Object Technologies Lecture 5: Distributed Objects.
Middleware Technologies compiled by: Thomas M. Cosley.
Performance Management 1 Performance, Scalability and Management  Topic  Refining the object model  Threading models  Distributed callbacks  Iterators.
II. Middleware for Distributed Systems
JMS Java Message Service Instructor Professor: Charles Tappert By Student: Amr Fouda.
Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department.
controls Middleware – OVERVIEW & architecture 26th June 2013
Collaborative Systems Developing Collaborative Systems with a Reuse Driven Process.
Principles of Computer Programming (using Java) Review Haidong Xue Summer 2011, at GSU.
Common Object Request Broker Architecture (CORBA) CS-328.
Copyright © 2003 ProsoftTraining. All rights reserved. Distributed Object Computing Using Java and CORBA.
A. Dworak BE-CO-IN, CERN. Agenda 228th June 2012  Sum up of the previous report  Middleware prototyping  Transport  Serialization  Design concepts.
Lecture On Database Analysis and Design By- Jesmin Akhter Lecturer, IIT, Jahangirnagar University.
Middleware-Based OS Distributed OS Networked OS 1MEIT Application Distributed Operating System Services Application Network OS.
Introduction to distributed systems Dr. S. Indran 23 January 2004.
Java Message Service - What and Why? Bill Kelly, Silvano Maffeis SoftWired AG, Zürich
AtacamaLargeMillimeterArray ACS Training Developing Python Clients.
Introduction to Distributed Systems Slides for CSCI 3171 Lectures E. W
Information Management NTU Interprocess Communication and Middleware.
Source: George Colouris, Jean Dollimore, Tim Kinderberg & Gordon Blair (2012). Distributed Systems: Concepts & Design (5 th Ed.). Essex: Addison-Wesley.
Introduction to Distributed Systems Slides for CSCI 3171 Lectures E. W. Grundke.
Tokyo July, 2005 ACS Characteristic Components B. Jeram, …..
Asynchronous Communication Between Components Presented By: Sachin Singh.
National Institute of Science & Technology Architecture of Message Oriented Middleware Anindya Kumar Jena [1] Architecture of Message Oriented Middleware.
Architecture of Message Oriented Middleware [1]
The PS/SL Middleware Project. 28 July 2000Alessandro RISSO The PS/SL Middleware Project Outline What is Middleware ? Project Overview Technical description.
Spring/2002 Distributed Software Engineering C:\unocourses\4350\slides\DefiningThreads 1 RMI.
Message Oriented Communication Prepared by Himaja Achutha Instructor: Dr. Yanqing Zhang Georgia State University.
SEMINOR. INTRODUCTION 1. Middleware is connectivity software that provides a mechanism for processes to interact with other processes running on multiple.
1/20/03A2-1 CS494 Interfaces and Collection in Java.
C# EMILEE KING. HISTORY OF C# In the late 1990’s Microsoft recognized the need to be able to develop applications that can run on multiple operating system.
ICALEPCS’ GenevaACS in ALMA1 Allen Farris National Radio Astronomy Observatory Lead, ALMA Control System.
Update on CORBA Support for Babel RMI Nanbor Wang and Roopa Pundaleeka Tech-X Corporation Boulder, CO Funded by DOE OASCR SBIR.
(1) A Proposal for the Java Public Middleware API Vito Baggiolini SL/CO.
Distributed Objects & Remote Invocation
ProActive components and legacy code Matthieu MOREL.
ASP.NET Web Services.  A unit of managed code installed under IIS that can be remotely invoked using HTTP.
Events in General. Agenda Post/wait technique I/O multiplexing Asynchronous I/O Signal-driven I/O Database events Publish/subscribe model Local vs. distributed.
© 2001 By Default! A Free sample background from Slide 1 The Equipment Access API WG Report 6 th February 2003 V. Baggiolini,
Spring 2009 Programming Fundamentals I Java Programming XuanTung Hoang Lecture No. 8.
Using CORBA To Bridge C++ and JMS Niall Stapley, CERN /
Presentation Layer (Graphical User Interface) AppGUI Logic Layer (Business Logic and data access) Network Discovery Device Information Extraction Network.
CMW status 6 Feb CMW status February 2002 Kris Kostro.
Collaborative Systems Developing Collaborative Systems with a Reuse Driven Process.
1 Channel Access Concepts – IHEP EPICS Training – K.F – Aug EPICS Channel Access Concepts Kazuro Furukawa, KEK (Bob Dalesio, LANL)
Middleware Department of Computer Science Southern Illinois University Edwardsville Spring, 2016 Dr. Hiroshi Fujinoki Middleware/001.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Module 5: Common Type System
Introduction to Middleware I
#01 Client/Server Computing
Lecture 4: RPC Remote Procedure Call Coulouris et al: Chapter 5
Kris Kostro Roland Swoboda
Lecture 4: RPC Remote Procedure Call CDK: Chapter 5
Middleware and ORB CS 314 Operating Systems
CMPE419 Mobile Application Development
Middleware and ORB CS 314 Operating Systems
#01 Client/Server Computing
CMW-DIP Gateways Overview CMW – Controls Middleware from BE-CO
Presentation transcript:

(1) The (Draft) Public Client API for Device-Oriented Middleware Communication The Middleware Project Team

(2) 13/7/00 Vito Baggiolini SL/CO Device-Oriented Functionality V1.0 Based on Device/Property Model –Devices with properties; –Devices = “real” hardware devices and “virtual” software devices Communication paradigms –Set/get (“request-reply”) of properties –Monitoring (“publish/subscribe”) of properties Property Data types: 1-level composite –structures containing primitive & arrays of primitive: struct Profile { long timeStamp; float[] values; } –NO nested structures

(3) 13/7/00 Vito Baggiolini SL/CO Device Access Software Client Program Architecture Server Framework Client Framework We buy We develop Users provide Legend: Server API Client API MoM get/set publish CORBA Corba  MoM Gateway CORBA For LynxOS

(4) 13/7/00 Vito Baggiolini SL/CO Java Client API Classes One generic RemoteDevice class –one instance per device –set/get, monitorOn/Off methods A few additional classes and interfaces –CycleSelector, Filter, ReplyListener, etc. –Exceptions RemoteDevice Constructors RemoteDevice(String DeviceName); RemoteDevice(String devClass, String devInstance);

(5) 13/7/00 Vito Baggiolini SL/CO Set/Get Methods Synchronous (“blocking”) get/set int getInt(String propName); void setInt(String propName, int value); Asynchronous (“non-blocking”) get/set void getInt(String propName, ReplyListener rl); Cycle-dependent, asynchronous get/set void getInt(String propName, CycleSelector sel, ReplyListener rl); Filtered 1, cycle-dependent, asynchronous get/set void getInt(String propName, CycleSelector sel, Filter f, ReplyListener rl); 1) server-side filtering of property data

(6) 13/7/00 Vito Baggiolini SL/CO MonitorOn/Off Methods Monitor a property on-change: MonToken monitorOn(String propName, monListener l); void monitorOff(MonToken mt); Monitor a property with CycleSelector: MonToken monitorOn(String propName, CycleSelector cs, monListener l);

(7) 13/7/00 Vito Baggiolini SL/CO Type-specific, overloaded methods In RemoteDevice class: One group of methods per primitive type setInt() setLong() setFloat() setDouble() setByte() setChar() setBoolean() One group of methods for Object types setObject() can be used for anything, including Arrays and Data/DataEntry Complex data types are passed with setObject() they are extracted and packed into Data/Data- Entry using Reflection