Logo 
Search:

Java Articles

Submit Article
Home » Articles » Java » CorbaRSS Feeds

CORBA program for displaying the date and time of the server machine, client machine and the difference between these two date and time

Posted By: Milind Mishra     Category: Java     Views: 4454

Write a CORBA program for displaying following things on the client machine.
a. the date and time of the server machine
b. the date and time of the client machine
c. the difference between these two date and time.

Code for CORBA program for displaying the date and time of the server machine, client machine and the difference between these two date and time in Java

// GetDateModule.idl

module GetDateModule
{
    interface GetDate
    {
        string get_date();
        longlong get_time();
    };

};


// GetDateImpl// Contains the implementation of the methods defined in the IDL file.

import GetDateModule.GetDatePOA;
import java.lang.String;
import java.util.Date;

class GetDateImpl extends GetDatePOA
{
    Date dt=new Date();
        
    GetDateImpl()
    {
        super();
        System.out.println("Encriptor Object Created");
    }

    public String get_date()
    {
        String time=dt.toString();
        return (time);
    }

    publiclong get_time()
    {
        return(dt.getTime());    
    }    
}


// GetDateServer.java

import GetDateModule.GetDate;
import org.omg.CosNaming.*;
import org.omg.CosNaming.NamingContextPackage.*;
import org.omg.CORBA.*;
import org.omg.PortableServer.*;

class GetDateServer
{

    publicstaticvoid main(String[] args)
    {
        try
        {
            // initialize the ORB
            org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(args,null);

            // initialize the BOA/POA
            POA rootPOA = POAHelper.narrow(orb.resolve_initial_references("RootPOA"));
            rootPOA.the_POAManager().activate();

            // creating the GetDate object
            GetDateImpl GetDate = new GetDateImpl();
            
            // get the object reference from the servant class
            org.omg.CORBA.Object ref = rootPOA.servant_to_reference(GetDate);

            System.out.println("Step1");
            GetDate h_ref = GetDateModule.GetDateHelper.narrow(ref);
            System.out.println("Step2");

            org.omg.CORBA.Object objRef =orb.resolve_initial_references("NameService");

            System.out.println("Step3");
            NamingContextExt ncRef = NamingContextExtHelper.narrow(objRef);
            System.out.println("Step4");

            String name = "GetDate";
            NameComponent path[] = ncRef.to_name(name);
            ncRef.rebind(path,h_ref);

            System.out.println("GetDate Server reading and waiting....");
            orb.run();


        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }
}


// GetDateClient.java

import GetDateModule.*;
import org.omg.CosNaming.*;
import org.omg.CosNaming.NamingContextPackage.*;
import org.omg.CORBA.*;
import java.io.*;
import java.lang.String;
import java.util.Date;

class GetDateClient
{
    
    publicstaticvoid main(String args[])
    {
        GetDate GetDateImpl=null;
        int i;    
        try
        {
            // initialize the ORB
            org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(args,null);

            org.omg.CORBA.Object objRef = orb.resolve_initial_references("NameService");
            NamingContextExt ncRef = NamingContextExtHelper.narrow(objRef);
            
            String name = "GetDate";
            GetDateImpl = GetDateHelper.narrow(ncRef.resolve_str(name));

            Date dt=new Date();
            long clientTime=dt.getTime();
            System.out.println("Client Date and Time="+dt);

            String serverDate=(String) GetDateImpl.get_date();
            
            long serverTime=(long) GetDateImpl.get_time();
            System.out.println("Server Date and Time="+serverDate);
    
            System.out.println("Time Difference in Server and Client(in millisecond)="+(clientTime-serverTime));
            
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }
}


// OUTPUT

Client Date and Time=Thu Dec 04 16:20:22 IST 2005
Server Date and Time=Thu Dec 04 16:20:16 IST 2005
Time Difference in Server and Client(in millisecond)=5248
  
Share: 



Milind Mishra
Milind Mishra author of CORBA program for displaying the date and time of the server machine, client machine and the difference between these two date and time is from India.
 
View All Articles

 
Please enter your Comment

  • Comment should be atleast 30 Characters.
  • Please put code inside [Code] your code [/Code].

 
No Comment Found, Be the First to post comment!