How To Use A Com In A Microsoft Com 2.5 (Dsi) (Dsi) (For Microsoft) (Com) (Sib) (Operations) (Orchestra) (Ahem) (I
|
|
|
- Felicia Burke
- 5 years ago
- Views:
Transcription
1 Distributed Object Systems 8 DCOM 2 COM (and some Corba) Dynamic Invocation Containment/Aggregation/Delegation Automation Monikers Piet van Oostrum Oct 7, 2008 Piet van Oostrum 1 Dynamic Invocation in COM Can Dynamic invocation in COM be done as in Corba? Use Request object instead of stub marshalling/protocol remains the same NO! In case of inproc object there is no stub/skeleton involved i.e. call is direct Dynamic invocation through the IDispatch interface Server must implement the IDispatch interface Is used for dynamic programming languages (Visual Basic, scripting languages,... ) Wizards can help you implement IDispatch IDispatch interface often uses special parameter types: VARIANT, BSTRING, SAFEARRAY These are just complicated struct/unions to represent Visual Basic datatypes. Piet van Oostrum 2 Dynamic Invocation The server object must implement this special IDispatch interface (compare Corba s DSI) Every method that the server offers through IDispatch gets a number (index) called DISPID In Corba you use method name, in COM number The server will usually switch on the DISPID GetTypeInfo can be called to get info about the types of the methods (if available usually from a type library) Type Library = file containing compiled IDL (AST) Piet van Oostrum 3 Client side The client can then use this IDispatch interface So the client must be able to call at least one static interface The client must do QueryInterface to get the IDispatch interface method GetIDsofNames is used to couple names of methods and DISPIDs It has an array of names as in parameter and an array of DISPIDs as out parameter The Invoke method is used to make the call The client calls the Invoke method A special VARIANT type is used for the parameters VARIANT contains type info for the marshaller Visual Basic types can be used and some special structs (BSTRING, SAFEARRAY, DATE, DECIMAL) Interfaces Multiple Interfaces If multiple dispinterfaces are defined by the object, one has to be designated as default. This is what Visual Basic uses. The QueryInterface for IDispatch will give the default interface The others can be obtained by explicit QueryInterface Dual Interface A dual interface is an interface that can be called both statically and dynamically It inherits from IDispatch and adds also the static methods This may be important for high performance applications Piet van Oostrum 4 Piet van Oostrum 5 slides8.pdf October 7,
2 IDL notation dispinterface IDL notation dual interface [uuid(3cfdb282-ccc5-11d0-ba0b-00a0c90df8bc)] dispinterface IStat { properties: methods: [id(1)] void init(); [id(2)] void additem(double item); [id(3)] double getavg(); [id(4)] long getnum(); }; [object, uuid(3cfdb282-ccc5-11d0-ba0b-00a0c90df8bc), dual ] interface IStat: IDispatch [id(1)] HRESULT init(); [id(2)] HRESULT additem([in] double item); [id(3)] HRESULT getavg([out] double avg); [id(4)] HRESULT getnum([out] long num); }; Piet van Oostrum 6 Piet van Oostrum 7 Contents Dynamic Invocation Containment/Aggregation/Delegation Automation Monikers Implementation inheritance in COM Microsoft literature about COM discourages inheritance Fragile Base Class problem: Mostly for compiled languages Subclass is dependent of base class (superclass) Later changes to base class may damage subclass if not recompiled The size of objects (i.e. structs or classes) The offsets to "visible" (public or protected) data The offsets to the virtual functions in the vtable Instead of inheritance use Containment/Delegation or Aggregation Please note: In.NET one of the strong points is the possibility to inherit even across programming languages. But there are strong checks at load time. Piet van Oostrum 8 Piet van Oostrum 9 Containment or Delegation Aggregation IUnknown IUnknown IUnknown Interface A Interface B Interface A IUnknown Outer Object Inner Object Interface B Inner Object Outer Object implements A methods and B methods (because interface A extends B) Outer object s implementation of B methods just calls Inner object s B methods void m(int x) { b.m(x); } Inner Object is not aware of the special relationship Inner Object can be considered as a helper object Outer Object Outer object puts inner object s method pointer in its own method table Problem: normally Inner object would return its own IUnknown pointer if QueryInterface is done on interface B Solution: When Outer object creates Inner object, it passes its own IUnknown pointer as Controlling Unknown CoCreateInstance(CLSID_CStat, pouter,... Piet van Oostrum 10 Piet van Oostrum 11 slides8.pdf October 7,
3 Inheritance and Delegation in Corba Delegation can be used when a programming language does not support multiple inheritance A m() C m() n() p() B n() Delegation class A { void m(); } class B { void n(); } class C { private A a; private B b; } C(A a, B b) { this.a = a; this.b = b; } m() { a.m(); } n() { b.n(); } p() {... } Piet van Oostrum 12 Piet van Oostrum 13 Inheritance problem The problem with this solution is that C cannot be used where an A or B is required. A solution is to use interfaces and implementation classes interface A {... } interface B {... } class A_impl implements A {... } class B_impl implements B {... } class C implements A, B { private A_impl a; // or private A a; private B_impl b; // or private B b;... etc... } or even interface C and class C_impl Piet van Oostrum 14 Corba Servant (Inheritance Model) Interface MyInterface Abstract Interface MyInterfaceOperations (generated by IDL compiler) Skeleton MyInterfacePOA implements MyInterfaceOperations Servant extends Skeleton class Operations Skeleton Servant implement. Problem if you want Servant to extend other class Piet van Oostrum 15 Corba Delegation Model (Tie) Servant class doesn t have to extend skeleton Only implement MyInterfaceOperations Servant can inherit from another class IDL compiler generates Tie class that inherits from skeleton Tie class delegates to implementation class Tie+implementation = actual servant Operations Skeleton Tie class (generated by IDL compiler) public class HelloPOATie extends HelloPOA { public HelloPOATie(HelloOperations delegate) { this._impl = delegate; }... public String sayhello () { return _impl.sayhello(); // delegation } // sayhello Servant implement. Delegation Tie Piet van Oostrum 16 Piet van Oostrum 17 slides8.pdf October 7,
4 Corba Delegation Model (Tie) class HelloImpl extends SomeOtherClass implements HelloOperations... method implementations as usual // Server class: create a servant. HelloImpl helloimpl = new HelloImpl(); // create a tie, with servant being the delegate. HelloPOATie tie = new HelloPOATie(helloImpl); COM Dynamic Invocation Containment/Aggregation/Delegation Automation Monikers // obtain the objectref for the tie // this step also implicitly activates the object Hello href = tie._this(orb); Piet van Oostrum 18 Piet van Oostrum 19 (OLE) Automation Automation (formerly known as OLE Automation) is a way to script a program from another program E.g. Microsoft Word: Open a document, insert some text and save it. Usually done from scripting languages, e.g. Visual Basic, Python, Ruby. Application must make its operations available as (Automation) COM interfaces (IDispatch). Collection of interfaces known as OLE. For use in web browsers a stripped down collection is ActiveX. Visual Basic and COM Visual Basic (up to version 6) Developed as COM programming language Seamless integration with COM Dim statvar as Stat.Stat Dim statvar as Object Set statvar = CreateObject("Stat") Set statvar = New Stat.Stat Dim statvar as New Stat.Stat statvar.init statvar.additem 3.14 Set result = statvar.getavg When declared as Object uses runtime resolution When declared as specific class uses compile time resolution Type info comes from Type Library (loaded at compile time or runtime). Piet van Oostrum 20 Piet van Oostrum 21 Automation with Visual Basic Dim Word As Object Dim Doc As Object Dim Spot As Object Set Word = CreateObject("Word.Application") Word.Visible = True Set Doc = Word.Documents.Add() Set Spot = Doc.Range(0, 0) Spot.InsertBefore "Hello From Visual Basic" Doc.SaveAs "test.doc" Doc.Close Word.Quit Early/Late Binding VB looks up the type info from the type library The Windows registry contains mapping from Program Id ("Word.Application") to Class Id The registry contains the location of the type library Variables declared as Object (Dim Word As Object) must be resolved at runtime This is called Late Binding. VB can also do the lookup at compile time: Early Binding: Register the type library at compile time Use: Dim Word As New Word.Application Piet van Oostrum 22 Piet van Oostrum 23 slides8.pdf October 7,
5 Automation with Python Can be used with ActiveState Python, or Standard Python + win32all extensions from win32com.client import Dispatch word = Dispatch("Word.Application") word.visible = True doc = word.documents.add() spot = doc.range(0, 0) spot.insertbefore("hello from Python") doc.saveas("test.doc") doc.close() word.quit() Python/COM observations Python is very simple to use for Automation Python looks up the type library and makes all decisions at runtime You can even do it interactively This makes development and try-out very easy You can also run the makepy script This generates additional Python files containing the methods of the interface (like stubs) At runtime these are used if available This is comparable to Early Binding (faster) Piet van Oostrum 24 Piet van Oostrum 25 Java and (D)COM J-Integra example Originally with Microsoft Java Virtual Machine (now defunct) Visual J or MS Java SDK Almost transparent Java virtual machine does all the administration Build Interface pointers, refcounts etc. Special language extension is used (in specially formatted comments) Jactivex program generates interface and class files from TLB (Type Library) Wrapper classes: CCW (Com callable wrapper) to call Java from COM, JCW (Java callable wrapper) to call COM from Java J-Integra and EZ JCom are commercial implementations of the COM protocol in Java (any Java). import excel.*;... Application app = new Application(); app.setvisible(true); Workbooks workbooks = app.getworkbooks(); Workbook workbook = workbooks.add(null); Sheets worksheets = workbook.getworksheets(); Worksheet sheet = new Worksheet(worksheets.add(null, null, null, null)); Range range = sheet.getrange("a1:c3", null); Object[][] newvalue = { {"abcd", new Boolean(false), new Double(98.0/12)}, {new Date(), new Integer(5454), new Float(22.0/7)}, {new Boolean(true), "xyzt", new Date() } }; range.setvalue(newvalue); // Update the spreadsheet Piet van Oostrum 26 Piet van Oostrum 27 Python OpenOffice.org automation Python OpenOffice.org automation Python as a separate process: Script programmer explicitely writes application startup code. Startup code must connect to Ooo. Code executes slow, as every call to OOo is going through the inter process bridge. Python process must be started separately. Python embedded in OpenOffice.org process: OOo Process Python Process PyUNO Runtime OOo Process PyUNO Runtime Python Code Python UNO component Script must be written as a PyUNO component (adding a coding overhead) OOo listens on an inter process resource (socket or named pipe). This must be switched on seperately either on command line or with the OOo configuration. Piet van Oostrum 28 Piet van Oostrum 29 slides8.pdf October 7,
6 Py-UNO example Py-UNO example import uno # get the uno component context from the PyUNO runtime localcontext = uno.getcomponentcontext() # create the UnoUrlResolver resolver = localcontext.servicemanager \.createinstancewithcontext( "com.sun.star.bridge.unourlresolver", localcontext ) # connect to the running office ctx = resolver.resolve( "uno:socket,host=localhost,\ port=2002;urp;staroffice.\ ComponentContext" ) smgr = ctx.servicemanager # get the central desktop object desktop = smgr.createinstancewithcontext( "com.sun.star.frame.desktop",ctx) # access the current writer document model = desktop.getcurrentcomponent() # access the document s text property text = model.text # create a cursor cursor = text.createtextcursor() # insert the text into the document text.insertstring( cursor, "Hello World", 0 ) Piet van Oostrum 30 Piet van Oostrum 31 Mac OS X Applescript COM tell application "Microsoft Word" set newdoc to make new document insert text "Hello from Applescript" at end of text object of active document save as newdoc file name "test.doc" end tell Dynamic Invocation Containment/Aggregation/Delegation Automation Monikers Piet van Oostrum 32 Piet van Oostrum 33 COM Monikers Moniker Implementation Monikers are (persistent) names for persistent objects If you want to revive a persistent object (e.g. Excel worksheet): Create an object of that class (CoCreateInstance) Force the object to load its persistent data (IPersist...) There can be many parameters to specify where the data comes from, e.g file name, which part of an object E.g. linked worksheet in Word document: filename and range of the worksheet How does Word know what parameters to give and what they mean (especially if it is an unknown class)? The object needs to have this information itself Monikers are used to encapsulate this data Word doesn t have to know all the interfaces of all possible linked objects Client only deals with the IMoniker interface E.g. in Object linking the moniker is stored in the structured document Interface IMoniker: BindToObject binds the moniker to an object BindToStorage binds the Moniker to the Storage of the object 13 more methods Also inherits from IPersistsStream (4 methods) which inherits from IPersist (1 method) Piet van Oostrum 34 Piet van Oostrum 35 slides8.pdf October 7,
7 Moniker use 4. Client invokes methods Moniker Examples File Moniker: contents is a file, persistent data is file name Client A 3. Pointer to interface A is returned via moniker Object Server Item Moniker: describes an item in a composite object, e.g. worksheet in an Excel workbook, persistent data is the item s name and the moniker of the object in which it is contained Composite Moniker: groups together other monikers, e.g. File Moniker, worksheet item and range item. Persistent date: the component monikers Java Moniker: describes a Java class (now defunct): 1. client calls IMoniker:: BindToObject(IID_A) 1 Moniker pointer method call/return 2. Moniker instantiates the object and tells it to load its persistent data Piet van Oostrum 36 Dim dat As Object Set dat = CreateObject("java:java.util.Date") Dim s As String s = dat.tostring Piet van Oostrum 37 Composite Moniker COM Structured Storage Word Structured Storage is used for compound documents These documents can contain other (sub)documents Client IMoniker Grades.xls IMoniker Composite moniker IMoniker Sheet1 IMoniker R1C1:R5C4 E.g. a Word document containing an Excel sheet Each subdocument can be accessed more or less independently COM structured documents work like a filesystem within a file It has streams (file-like) and containers (directory-like) Interface IStream for file-like objects Read, Write, Seek... methods Interface Istorage for the containers CreateStream, OpenStream for Streams in the Storage CreateStorage, OpenStorage for sub-storages methods for renaming, destroying, copying and moving Transaction support (Commit, Revert) Setting the class of an object, getting information... File moniker Item moniker Item moniker Piet van Oostrum 38 Other interfaces to deal with persistence OpenDoc document Piet van Oostrum 39 Structured Storage in general Consists Example of document parts Apple and IBM worked together on OpenDoc compound document architecture document consists of parts different parts can have different part editors part editors work in a part of the visible window parts can have different presentations parts can have different versions Now abandoned (sources are available) Piet van Oostrum 40 Piet van Oostrum 41 - Each having its own part editor slides8.pdf - Which editor is user configurable - Parts may be a container for other parts - Parts execute as part of a process for a October 7, 2008 document 7
8 Presentations Different Part can representations have different presentations What is the problem? Putting parts together in a single document Reinventing the filesystem within a file Better use the real filesystem Or make mountable filesystems No need to rewrite applications Ship a document in a zip file Versioning Use existing tools, like CVS, subversion Contra: not integrated with compound documents Simultaneous access Is usually done with database systems Maybe file access should be upgraded to include transactions Can be done with an additional Transactions layer Part info - Presentation data Piet van Oostrum 42 - Can be stored with the frame Piet van Oostrum 43 View type - Determines the basic kind of presentation Distributed Object Systems 31/03/98 Atze Dijkstra OpenDoc 14 Dept. of Comp.Science, UU slides8.pdf October 7,
What is COM/DCOM. Distributed Object Systems 4 COM/DCOM. COM vs Corba 1. COM vs. Corba 2. Multiple inheritance vs multiple interfaces
Distributed Object Systems 4 COM/DCOM Piet van Oostrum Sept 18, 2008 What is COM/DCOM Component Object Model Components (distributed objects) à la Microsoft Mainly on Windows platforms Is used in large
Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme. Middleware. Chapter 8: Middleware
Middleware 1 Middleware Lehrstuhl für Informatik 4 Middleware: Realisation of distributed accesses by suitable software infrastructure Hiding the complexity of the distributed system from the programmer
COM+ OVERVIEW OF MICROSOFTS COM, DCOM AND COM+ COMPONENT TECHNOLOGIES DCOM - COM+ Peter R. Egli INDIGOO.COM. indigoo.com. 1/20 Rev. 1.
COM, DCOM - COM+ DCOM, COM+ OVERVIEW OF MICROSOFTS COM, DCOM AND COM+ COMPONENT TECHNOLOGIES Peter R. Egli INDIGOO.COM 1/20 Contents 1. Evolution of COM 2. COM, DCOM, ActiveX, OLE, COM+ 3. Structure of
The Microsoft Way: COM, OLE/ActiveX, COM+ and.net CLR. Chapter 15
The Microsoft Way: COM, OLE/ActiveX, COM+ and.net CLR Chapter 15 Microsoft is continually reengineering its existing application and platform base. Started with VBX, continued with OLE, ODBC, ActiveX,
Infrastructure that supports (distributed) componentbased application development
Middleware Technologies 1 What is Middleware? Infrastructure that supports (distributed) componentbased application development a.k.a. distributed component platforms mechanisms to enable component communication
COM Connect User's Guide. VisualWorks 7.8 P46-0123-07 SIMPLIFICA TION THROUGH I NNOV A TION
COM Connect User's Guide VisualWorks 7.8 P46-0123-07 SIMPLIFICA TION THROUGH I NNOV A TION Copyright 1997 2011 by Cincom Systems, Inc. All rights reserved. This product contains copyrighted third-party
Corba. Corba services. The (very) global picture. Corba. Distributed Object Systems 3 CORBA/IDL. Corba. Features. Services
Distributed Systems 3 CORBA/ Piet van Oostrum Sep 11, 2008 Corba Common Request Broker Architecture Middleware for communicating objects Context Management Group (OMG) Consortium of computer companies
Middleware Lou Somers
Middleware Lou Somers April 18, 2002 1 Contents Overview Definition, goals, requirements Four categories of middleware Transactional, message oriented, procedural, object Middleware examples XML-RPC, SOAP,
Introduction. Why (GIS) Programming? Streamline routine/repetitive procedures Implement new algorithms Customize user applications
Introduction Why (GIS) Programming? Streamline routine/repetitive procedures Implement new algorithms Customize user applications 1 Computer Software Architecture Application macros and scripting - AML,
Introduction CORBA Distributed COM. Sections 9.1 & 9.2. Corba & DCOM. John P. Daigle. Department of Computer Science Georgia State University
Sections 9.1 & 9.2 Corba & DCOM John P. Daigle Department of Computer Science Georgia State University 05.16.06 Outline 1 Introduction 2 CORBA Overview Communication Processes Naming Other Design Concerns
Implementation Aspects of OO-Languages
1 Implementation Aspects of OO-Languages Allocation of space for data members: The space for data members is laid out the same way it is done for structures in C or other languages. Specifically: The data
www.virtualians.pk CS506 Web Design and Development Solved Online Quiz No. 01 www.virtualians.pk
CS506 Web Design and Development Solved Online Quiz No. 01 Which of the following is a general purpose container? JFrame Dialog JPanel JApplet Which of the following package needs to be import while handling
Module 17. Client-Server Software Development. Version 2 CSE IIT, Kharagpur
Module 17 Client-Server Software Development Lesson 42 CORBA and COM/DCOM Specific Instructional Objectives At the end of this lesson the student would be able to: Explain what Common Object Request Broker
Elements of Advanced Java Programming
Appendix A Elements of Advanced Java Programming Objectives At the end of this appendix, you should be able to: Understand two-tier and three-tier architectures for distributed computing Understand the
How To Create A C++ Web Service
A Guide to Creating C++ Web Services WHITE PAPER Abstract This whitepaper provides an introduction to creating C++ Web services and focuses on:» Challenges involved in integrating C++ applications with
ACCESS 2007. Importing and Exporting Data Files. Information Technology. MS Access 2007 Users Guide. IT Training & Development (818) 677-1700
Information Technology MS Access 2007 Users Guide ACCESS 2007 Importing and Exporting Data Files IT Training & Development (818) 677-1700 [email protected] TABLE OF CONTENTS Introduction... 1 Import Excel
Socket = an interface connection between two (dissimilar) pipes. OS provides this API to connect applications to networks. home.comcast.
Interprocess communication (Part 2) For an application to send something out as a message, it must arrange its OS to receive its input. The OS is then sends it out either as a UDP datagram on the transport
DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service
DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service Achieving Scalability and High Availability Abstract DB2 Connect Enterprise Edition for Windows NT provides fast and robust connectivity
Overview of CORBA 11.1 I NTRODUCTION TO CORBA. 11.4 Object services 11.5 New features in CORBA 3.0 11.6 Summary
C H A P T E R 1 1 Overview of CORBA 11.1 Introduction to CORBA 11.2 CORBA architecture 11.3 Client and object implementations 11.4 Object services 11.5 New features in CORBA 3.0 11.6 Summary In previous
Java Application Developer Certificate Program Competencies
Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle
Interface Definition Language
Interface Definition Language A. David McKinnon Washington State University An Interface Definition Language (IDL) is a language that is used to define the interface between a client and server process
Agilent PNA Microwave Network Analyzers
Agilent PNA Microwave Network Analyzers Application Note 1408-13 Introduction to Application Development Table of Contents Introduction...3 How to Use this Document...3 Basic Administration...4 Registering
Java (12 Weeks) Introduction to Java Programming Language
Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short
Getting Started with the Internet Communications Engine
Getting Started with the Internet Communications Engine David Vriezen April 7, 2014 Contents 1 Introduction 2 2 About Ice 2 2.1 Proxies................................. 2 3 Setting Up ICE 2 4 Slices 2
CHAPTER 13: INTEGRATION OPTIONS
Chapter 13: Integration Options CHAPTER 13: INTEGRATION OPTIONS Objectives Introduction The objectives are: Describe the concepts of Microsoft Dynamics NAV Web Services. Create a codeunit Web service,
CAPIX Job Scheduler User Guide
CAPIX Job Scheduler User Guide Version 1.1 December 2009 Table of Contents Table of Contents... 2 Introduction... 3 CJS Installation... 5 Writing CJS VBA Functions... 7 CJS.EXE Command Line Parameters...
SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems
SOFT 437 Software Performance Analysis Ch 5:Web Applications and Other Distributed Systems Outline Overview of Web applications, distributed object technologies, and the important considerations for SPE
Introduction to Distributed Computing using CORBA
Introduction to Distributed Computing using CORBA Rushikesh K. Joshi Dept of Computer Science & Engineering Indian Institute of Technology, Bombay Powai, Mumbai - 400 076, India. Email: [email protected]
IBM BPM V8.5 Standard Consistent Document Managment
IBM Software An IBM Proof of Technology IBM BPM V8.5 Standard Consistent Document Managment Lab Exercises Version 1.0 Author: Sebastian Carbajales An IBM Proof of Technology Catalog Number Copyright IBM
Chapter 2: Remote Procedure Call (RPC)
Chapter 2: Remote Procedure Call (RPC) Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) [email protected] http://www.iks.inf.ethz.ch/ Contents - Chapter 2 - RPC
Basic Unix/Linux 1. Software Testing Interview Prep
Basic Unix/Linux 1 Programming Fundamentals and Concepts 2 1. What is the difference between web application and client server application? Client server application is designed typically to work in a
Introduction Object-Oriented Network Programming CORBA addresses two challenges of developing distributed systems: 1. Making distributed application development no more dicult than developing centralized
Applets, RMI, JDBC Exam Review
Applets, RMI, JDBC Exam Review Sara Sprenkle Announcements Quiz today Project 2 due tomorrow Exam on Thursday Web programming CPM and servlets vs JSPs Sara Sprenkle - CISC370 2 1 Division of Labor Java
Building Web Services with Apache Axis2
2009 Marty Hall Building Web Services with Apache Axis2 Part I: Java-First (Bottom-Up) Services Customized Java EE Training: http://courses.coreservlets.com/ Servlets, JSP, Struts, JSF/MyFaces/Facelets,
Towards practical reactive security audit using extended static checkers 1
Towards practical reactive security audit using extended static checkers 1 Julien Vanegue 1 Shuvendu K. Lahiri 2 1 Bloomberg LP, New York 2 Microsoft Research, Redmond May 20, 2013 1 The work was conducted
Distributed Network Management Using SNMP, Java, WWW and CORBA
Distributed Network Management Using SNMP, Java, WWW and CORBA André Marcheto Augusto Hack Augusto Pacheco Augusto Verzbickas ADMINISTRATION AND MANAGEMENT OF COMPUTER NETWORKS - INE5619 Federal University
FileMaker 11. ODBC and JDBC Guide
FileMaker 11 ODBC and JDBC Guide 2004 2010 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker is a trademark of FileMaker, Inc. registered
Distributed Objects and Components
Distributed Objects and Components Introduction This essay will identify the differences between objects and components and what it means for a component to be distributed. It will also examine the Java
Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON
Revista Informatica Economică, nr. 4 (44)/2007 45 Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON Iulian ILIE-NEMEDI, Bucharest, Romania, [email protected] Writing a custom web
Building Views and Charts in Requests Introduction to Answers views and charts Creating and editing charts Performing common view tasks
Oracle Business Intelligence Enterprise Edition (OBIEE) Training: Working with Oracle Business Intelligence Answers Introduction to Oracle BI Answers Working with requests in Oracle BI Answers Using advanced
3F6 - Software Engineering and Design. Handout 10 Distributed Systems I With Markup. Steve Young
3F6 - Software Engineering and Design Handout 10 Distributed Systems I With Markup Steve Young Contents 1. Distributed systems 2. Client-server architecture 3. CORBA 4. Interface Definition Language (IDL)
ELEC 377. Operating Systems. Week 1 Class 3
Operating Systems Week 1 Class 3 Last Class! Computer System Structure, Controllers! Interrupts & Traps! I/O structure and device queues.! Storage Structure & Caching! Hardware Protection! Dual Mode Operation
DATA 301 Introduction to Data Analytics Microsoft Excel VBA. Dr. Ramon Lawrence University of British Columbia Okanagan
DATA 301 Introduction to Data Analytics Microsoft Excel VBA Dr. Ramon Lawrence University of British Columbia Okanagan [email protected] DATA 301: Data Analytics (2) Why Microsoft Excel Visual Basic
FREQUENTLY ASKED QUESTIONS
FREQUENTLY ASKED QUESTIONS Secure Bytes, October 2011 This document is confidential and for the use of a Secure Bytes client only. The information contained herein is the property of Secure Bytes and may
El Dorado Union High School District Educational Services
El Dorado Union High School District Course of Study Information Page Course Title: ACE Computer Programming II (#495) Rationale: A continuum of courses, including advanced classes in technology is needed.
Lecture 7: Java RMI. CS178: Programming Parallel and Distributed Systems. February 14, 2001 Steven P. Reiss
Lecture 7: Java RMI CS178: Programming Parallel and Distributed Systems February 14, 2001 Steven P. Reiss I. Overview A. Last time we started looking at multiple process programming 1. How to do interprocess
Fundamentals of Java Programming
Fundamentals of Java Programming This document is exclusive property of Cisco Systems, Inc. Permission is granted to print and copy this document for non-commercial distribution and exclusive use by instructors
BPM Scheduling with Job Scheduler
Document: BPM Scheduling with Job Scheduler Author: Neil Kolban Date: 2009-03-26 Version: 0.1 BPM Scheduling with Job Scheduler On occasion it may be desired to start BPM processes at configured times
Web Services. Distributed Object Systems 11. Web Services, SOAP and NET. Web Applications. Web Services. Web services vs Distributed Objects
Distributed Object Systems 11 Web Services, SOAP and NET Piet van Oostrum Web Services Some Definitions A Web Service is a software system designed to support interoperable machine-to-machine interaction
Report of the case study in Sistemi Distribuiti A simple Java RMI application
Report of the case study in Sistemi Distribuiti A simple Java RMI application Academic year 2012/13 Vessio Gennaro Marzulli Giovanni Abstract In the ambit of distributed systems a key-role is played by
Tuple spaces and Object spaces. Distributed Object Systems 12. Tuple spaces and Object spaces. Communication. Tuple space. Mechanisms 2.
Distributed Object Systems 12 Tuple spaces and Object spaces Tuple spaces and Object spaces Tuple spaces Shared memory as a mechanism for exchanging data in a distributed setting (i.e. separate from processes)
B) Using Processor-Cache Affinity Information in Shared Memory Multiprocessor Scheduling
A) Recovery Management in Quicksilver 1) What role does the Transaction manager play in the recovery management? It manages commit coordination by communicating with servers at its own node and with transaction
iphone Objective-C Exercises
iphone Objective-C Exercises About These Exercises The only prerequisite for these exercises is an eagerness to learn. While it helps to have a background in object-oriented programming, that is not a
ARM-BASED PERFORMANCE MONITORING FOR THE ECLIPSE PLATFORM
ARM-BASED PERFORMANCE MONITORING FOR THE ECLIPSE PLATFORM Ashish Patel, Lead Eclipse Committer for ARM, IBM Corporation Oliver E. Cole, President, OC Systems, Inc. The Eclipse Test and Performance Tools
Tutorial Reference Manual. Java WireFusion 4.1
Tutorial Reference Manual Java WireFusion 4.1 Contents INTRODUCTION...1 About this Manual...2 REQUIREMENTS...3 User Requirements...3 System Requirements...3 SHORTCUTS...4 DEVELOPMENT ENVIRONMENT...5 Menu
BarTender s ActiveX Automation Interface. The World's Leading Software for Label, Barcode, RFID & Card Printing
The World's Leading Software for Label, Barcode, RFID & Card Printing White Paper BarTender s ActiveX Automation Interface Controlling BarTender using Programming Languages not in the.net Family Contents
Source Code Translation
Source Code Translation Everyone who writes computer software eventually faces the requirement of converting a large code base from one programming language to another. That requirement is sometimes driven
PIE. Internal Structure
PIE Internal Structure PIE Composition PIE (Processware Integration Environment) is a set of programs for integration of heterogeneous applications. The final set depends on the purposes of a solution
Chapter 6. CORBA-based Architecture. 6.1 Introduction to CORBA 6.2 CORBA-IDL 6.3 Designing CORBA Systems 6.4 Implementing CORBA Applications
Chapter 6. CORBA-based Architecture 6.1 Introduction to CORBA 6.2 CORBA-IDL 6.3 Designing CORBA Systems 6.4 Implementing CORBA Applications 1 Chapter 6. CORBA-based Architecture Part 6.1 Introduction to
A Java-based system support for distributed applications on the Internet
A Java-based system support for distributed applications on the Internet D. Hagimont 1, D. Louvegnies 2 SIRAC Project INRIA, 655 av. de l Europe, 38330 Montbonnot Saint-Martin, France Abstract: We have
Using Crystal Reports with VFP
Using Crystal Reports with VFP Introduction to Crystal Reports One of the most important aspects of Visual FoxPro applications is reporting. Whether we provide canned reports or allow the user to design
Jonathan Worthington Scarborough Linux User Group
Jonathan Worthington Scarborough Linux User Group Introduction What does a Virtual Machine do? Hides away the details of the hardware platform and operating system. Defines a common set of instructions.
Java and ActiveX Projects
The Open Group Research Institute Java and ActiveX Projects G.N.Madhusudan Principal Research Scientist The OpenGroup Research Institute [email protected] Web and Security - Outline of Projects
Computer Networks/DV2 Lab
Computer Networks/DV2 Lab Room: BB 219 Additional Information: http://ti.uni-due.de/ti/en/education/teaching/ss13/netlab Equipment for each group: - 1 Server computer (OS: Windows Server 2008 Standard)
Outline. hardware components programming environments. installing Python executing Python code. decimal and binary notations running Sage
Outline 1 Computer Architecture hardware components programming environments 2 Getting Started with Python installing Python executing Python code 3 Number Systems decimal and binary notations running
PERFORMANCE COMPARISON OF COMMON OBJECT REQUEST BROKER ARCHITECTURE(CORBA) VS JAVA MESSAGING SERVICE(JMS) BY TEAM SCALABLE
PERFORMANCE COMPARISON OF COMMON OBJECT REQUEST BROKER ARCHITECTURE(CORBA) VS JAVA MESSAGING SERVICE(JMS) BY TEAM SCALABLE TIGRAN HAKOBYAN SUJAL PATEL VANDANA MURALI INTRODUCTION Common Object Request
Professional Services. Plant Applications SDK Guidelines GE FANUC AUTOMATION. Prepared by. Donna Lui Professional Services
GE FANUC AUTOMATION Professional Services Plant Applications SDK Guidelines Prepared by Donna Lui Professional Services GE Fanuc Automation SDK Guidelines Page 1 of 22 All rights reserved. No part of this
UML FOR OBJECTIVE-C. Excel Software www.excelsoftware.com
UML FOR OBJECTIVE-C Excel Software www.excelsoftware.com Objective-C is a popular programming language for Mac OS X computers. The Unified Modeling Language (UML) is the industry standard notation for
OpenOffice.org Extensions development in Java with NetBeans in practise. Jürgen Schmidt OpenOffice.org Sun Microsystems, Inc.
OpenOffice.org Extensions development in Java with NetBeans in practise Jürgen Schmidt OpenOffice.org Sun Microsystems, Inc. 1 OpenOffice.org Extensions development in Java with NetBeans in practise Motivation
Managing Variability in Software Architectures 1 Felix Bachmann*
Managing Variability in Software Architectures Felix Bachmann* Carnegie Bosch Institute Carnegie Mellon University Pittsburgh, Pa 523, USA [email protected] Len Bass Software Engineering Institute Carnegie
Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture
Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts
How To Write A Network Operating System For A Network (Networking) System (Netware)
Otwarte Studium Doktoranckie 1 Adaptable Service Oriented Architectures Krzysztof Zieliński Department of Computer Science AGH-UST Krakow Poland Otwarte Studium Doktoranckie 2 Agenda DCS SOA WS MDA OCL
Microsoft Access is an outstanding environment for both database users and professional. Introduction to Microsoft Access and Programming SESSION
539752 ch01.qxd 9/9/03 11:38 PM Page 5 SESSION 1 Introduction to Microsoft Access and Programming Session Checklist Understanding what programming is Using the Visual Basic language Programming for the
Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming
Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming Java has become enormously popular. Java s rapid rise and wide acceptance can be traced to its design
Chapter 1 Fundamentals of Java Programming
Chapter 1 Fundamentals of Java Programming Computers and Computer Programming Writing and Executing a Java Program Elements of a Java Program Features of Java Accessing the Classes and Class Members The
Migrating Legacy Software Systems to CORBA based Distributed Environments through an Automatic Wrapper Generation Technique
Migrating Legacy Software Systems to CORBA based Distributed Environments through an Automatic Wrapper Generation Technique Hyeon Soo Kim School of Comp. Eng. and Software Eng., Kum Oh National University
Programming IoT Gateways With macchina.io
Programming IoT Gateways With macchina.io Günter Obiltschnig Applied Informatics Software Engineering GmbH Maria Elend 143 9182 Maria Elend Austria [email protected] This article shows how
Course Number: IAC-SOFT-WDAD Web Design and Application Development
Course Number: IAC-SOFT-WDAD Web Design and Application Development Session 1 (10 Hours) Client Side Scripting Session 2 (10 Hours) Server Side Scripting - I Session 3 (10 hours) Database Session 4 (10
A Comparative Analysis of Programming Languages for GIS
A Comparative Analysis of Programming Languages for GIS Kurt Swendson Department of Resource Analysis, Saint Mary s University of Minnesota, Minneapolis, MN 55404 Keywords: GIS, ArcMap, ArcView, ArcObjects,
bbc Developing Applications Using Interapplication Communication Adobe Acrobat SDK November 2006 Version 8.0
bbc Developing Applications Using Interapplication Communication Adobe Acrobat SDK November 2006 Version 8.0 2006 Adobe Systems Incorporated. All rights reserved. Adobe Acrobat SDK 8.0 Developing Applications
BarTender s.net SDKs
The World's Leading Software for Label, Barcode, RFID & Card Printing White Paper BarTender s.net SDKs Programmatically Controlling BarTender using C# and VB.NET Contents Overview of BarTender.NET SDKs...
WHITEPAPER M&M Application Platform for WPF
Author: Sven Rieger Created on: 2015-04-10 Version: 1.0 Modular Windows desktop applications need a well-defined architecture. Modularity has to be supported throughout the whole application and its architecture.
Object Oriented Databases. OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar
Object Oriented Databases OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar Executive Summary The presentation on Object Oriented Databases gives a basic introduction to the concepts governing OODBs
BlackBerry Enterprise Server for Microsoft Exchange Version: 5.0 Service Pack: 2. Feature and Technical Overview
BlackBerry Enterprise Server for Microsoft Exchange Version: 5.0 Service Pack: 2 Feature and Technical Overview Published: 2010-06-16 SWDT305802-1108946-0615123042-001 Contents 1 Overview: BlackBerry Enterprise
Model Transformations and Code Generation
Model Transformations and Code Generation Ecole IN2P3 Temps Réel [email protected] 2 École d été, 26.11 08h30 10h00: Cours S1 Component models CCM and FCM (connectors) CCM CORBA component model
Outline SOA. Properties of SOA. Service 2/19/2016. Definitions. Comparison of component technologies. Definitions Component technologies
Szolgáltatásorientált rendszerintegráció Comparison of component technologies Simon Balázs, BME IIT Outline Definitions Component technologies RPC, RMI, CORBA, COM+,.NET, Java, OSGi, EJB, SOAP web services,
Computing Concepts with Java Essentials
2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Computing Concepts with Java Essentials 3rd Edition Cay Horstmann
SW5706 Application deployment problems
SW5706 This presentation will focus on application deployment problem determination on WebSphere Application Server V6. SW5706G11_AppDeployProblems.ppt Page 1 of 20 Unit objectives After completing this
How to Configure Informix Connect and ODBC
Informix User Forum 2005 Moving Forward With Informix How to Configure Informix Connect and ODBC James Edmiston Informix DBA Consultant Quest Information Systems, Inc. Atlanta, Georgia December 8-9, 2005
Software Development Kit
Open EMS Suite by Nokia Software Development Kit Functional Overview Version 1.3 Nokia Siemens Networks 1 (21) Software Development Kit The information in this document is subject to change without notice
Lecture 17: Mobile Computing Platforms: Android. Mythili Vutukuru CS 653 Spring 2014 March 24, Monday
Lecture 17: Mobile Computing Platforms: Android Mythili Vutukuru CS 653 Spring 2014 March 24, Monday Mobile applications vs. traditional applications Traditional model of computing: an OS (Linux / Windows),
Government Girls Polytechnic, Bilaspur
Government Girls Polytechnic, Bilaspur Name of the Lab: Internet & Web Technology Lab Title of the Practical : Dynamic Web Page Design Lab Class: CSE 6 th Semester Teachers Assessment:20 End Semester Examination:50
Habanero Extreme Scale Software Research Project
Habanero Extreme Scale Software Research Project Comp215: Java Method Dispatch Zoran Budimlić (Rice University) Always remember that you are absolutely unique. Just like everyone else. - Margaret Mead
Agent Languages. Overview. Requirements. Java. Tcl/Tk. Telescript. Evaluation. Artificial Intelligence Intelligent Agents
Agent Languages Requirements Overview Java Tcl/Tk Telescript Evaluation Franz J. Kurfess, Cal Poly SLO 211 Requirements for agent Languages distributed programming large-scale (tens of thousands of computers)
Lecture 1 Introduction to Android
These slides are by Dr. Jaerock Kwon at. The original URL is http://kettering.jrkwon.com/sites/default/files/2011-2/ce-491/lecture/alecture-01.pdf so please use that instead of pointing to this local copy
