Want to sip a cup of Coffee - PowerPoint PPT Presentation

1 / 15
About This Presentation
Title:

Want to sip a cup of Coffee

Description:

Features of Java RMI Myself. Detailed Architecture Farhad. Comparison of all OO ... Yes, I wanna wrestle with my 551 friends!! The cup is taken for Granted ... – PowerPoint PPT presentation

Number of Views:35
Avg rating:3.0/5.0
Slides: 16
Provided by: vaji3
Category:
Tags: coffee | cup | sip | wanna | want

less

Transcript and Presenter's Notes

Title: Want to sip a cup of Coffee


1
Want to sip a cup of Coffee
  • Hurray!! No Studies Today
  • Lets have a COFFEE BreakI mean
  • Presentation Distribution
  • Features of Java RMI Myself
  • Detailed Architecture Farhad
  • Comparison of all OO M/W Sachin
  • Why use/DO NOT use Java/RMI?? - Open
  • Is Java RMI the best architecture around??
  • Yes, I wanna wrestle with my 551 friends!!

2
The cup is taken for Granted
  • RMI has all the features Java possesses viz.
    portability, hybrid language, blahblah..blah
  • Both client/server is written in Java the
    execution is in a java VM.
  • Distinction between interfaces and classes

3
Specification
  • OO Language-Sun MicroSystem-Creates a
    bytestream-interpreted by VM JDK 1.1
  • Java uses API called RMI. I am born here.
  • Design-Object communication, integration with
    java object model and resolution of
    heterogeneity.
  • Abstraction of UDP datagrams and TCP streams.
  • High level servicesJINI, EJB sits on top of me.

4
Meta-Object Model
  • I dont need stupid IDL
  • Restriction of the visibility of declarations-
    scooping mechanism (packages). (Similar to
    CORBA). There is need to identify the packages
    file to which the declarations exists.

5
Objects
  • Both C/S objects in java-invoke each other.
  • LPC-governed by class definition, RMI by
    Interfaces.
  • Sorry NO location transparency Please!!
  • I know U from my Servers RMI registry

6
Types
  • Strongly typed language
  • It has a static type system
  • It supports atomic types(int,float,double char)
  • Java object types includes both classes and
    interfaces.
  • Server objects that wants to be accessible
    remotely needs to implement at least one
    interface.

7
Attributes
  • I/F cannot define attributes.This is similar to
    COM.In CORBA, they support as attributes are
    treated as operations.Thus, the designers of
    remote objects have to write access operations.

8
Operations
  • Operations in java are called methods. A client
    object can request execution of all those methods
    that are declared in all remote interfaces of
    server objects.
  • Operations should only have atomic non-remote
    object types and remote interfaces.
  • The mechanism for passing objects to a remote
    object is different from local procedure call.

9
Operations (Contd..)
  • No location transparency unlike in CORBA.
  • 1.Parameter passing of atomic type CBV(L/R
    calls)
  • 2.Object passing CBR(For local calls)
  • 3.Object passingSerializable (Passed BV)(L-R
    calls)
  • Client copies the object before passing
  • 4.Object passing CBR
  • (For remote objects to remote method.) Object
    is copied but should be kept on the same host.

10
Application Designers Beware
  • 3 scenarios
  • For NR objects to pass to R object-use serialize
    I/F. We have to know that object has to be passed
    to the R method.
  • When passing NR object to R method, any changes
    made at remote method to the object will not
    reflect at the local end.
  • When passing R object to R method, any changes
    made at R object will be seen at the L end.

11
Requests
  • Objects requests in java are RMI.
  • Supports at-most-once semantics requests
  • Java only supports static RMI (i.e. Java RMI can
    only be defined at the time when client object is
    compiled). It does not support dynamic RMI as it
    does have reflection API.

12
Failure Handling
  • If failure occurs, java throws exception.
  • Any interface that extends remote has to declare,
    to throw RemoteException.
  • Remote methods may throw additional exceptions,
    which may be very useful to developers.

13
Multiple Inheritance
  • My friend, Java supports inheritance so do I.
  • I dont like MI for classes but I support MI for
    I/Fs.
  • Remote inheritance can inherited from remote and
    non-remote interfaces at the same time as long as
    remote interfaces are allowed to throw
    RemoteException error.

14
Polymorphism
  • Java supports polymorphism that is statically
    restricted by inheritance, so do I.
  • Ensures type-safety (only possible if static type
    is a SuperType of static type to be assigned).
  • With multiple interface inheritance, it became
    possible to have polymorphism between remote and
    non-remote objects.

15
So how does my tastes??
Write a Comment
User Comments (0)
About PowerShow.com