[omniORB] Single Login to server program

Muro, Sam research at businesstz.com
Mon Aug 2 07:44:15 BST 2010


Can someone advice the way forward.

Muro, Sam wrote:
> Hello Bruce
> What do you mean by the status?
>
> I have done all coding except the login scenario mentioned and multithread
> in case is the status you are referring to.
>
> Sam
> Bruce Visscher wrote:
>> I think to really do this properly, you need CORBA security.  What is
>> the status of this in omniORB?
>>
>> On Sat, Jul 31, 2010 at 10:54 AM, Muro, Sam <research at businesstz.com>
>> wrote:
>>>
>>> Hi
>>> I am trying to implement a corba program (client) to retrieve customer
>>> information from the server. Since the server allow to login once and
>>> perform your operations until the lifetime experies, i want the client
>>> to
>>> use already login connection to perform the retrieve function without
>>> login in to the server for every request.
>>>
>>> Suppose retrieve has three functions, logon(), perform() and logoff()
>>> Pseudo code;
>>> 1. User runs a client application
>>>        ./retrieve <corbaloc URI> customerID
>>> 2. if the client program has already login, donot login, go to 4
>>> 3. Client program login to the server program
>>> 4. client program invoke perform(customerID) to retrieve customer
>>> information
>>> 5. Client program submit customer information to the calling program,
>>> in
>>> this case, stdio
>>> 6. Unless specified, do not logoff
>>>
>>> Here is the code snippets;
>>>
>>> static void login(Base::Customer_ptr e) {
>>>
>>>  CORBA::String_var username = (const char*) "mimi";
>>>  CORBA::String_var password = (const char*) "ahh!!";
>>>  CORBA::String_var seckey= (const char*) "";
>>>  Base::BaseList  BaseLists;
>>>
>>>  BaseList.length(2);
>>>  BaseList[0].bName =  CORBA::string_dup("CATEGORY");
>>>  BaseList[0].bValue = CORBA::string_dup("VIP");
>>>
>>>  BaseList[1].bName =  CORBA::string_dup("CATEGORY");
>>>  BaseList[1].bValue = CORBA::string_dup("VIP");
>>>
>>> //I JUST WANT TO PERFORM THIS FUNCTION IFF IT HASNT BEEN INVOKED
>>> BEFORE,
>>> ELSE SKIP THIS METHOD
>>>  e->Login(username,password,seckey); //NEW seckey WILL BE RETURNED
>>>
>>>  Base::BaseResult result;
>>>  result=  e-> Perform(seckey, BaseList);
>>>
>>>  cerr  << "***********************************" <<endl
>>>        << "****         TASK RESULT      *****" <<endl
>>>        << "****     \t"<< taskresult << "  *****" <<endl
>>>        << "***********************************" <<endl;
>>>
>>>  //PERFORM THIS FUCTION ONLY IF NECESSARY, MAY CHECK argc[] for
>>> specified
>>> option
>>>  e-> logoff();
>>>
>>> }
>>>
>>> I also want to make this be multithreads.
>>> Any input is highly appreciated
>>>
>>> Sam
>>>
>>> _______________________________________________
>>> omniORB-list mailing list
>>> omniORB-list at omniorb-support.com
>>> http://www.omniorb-support.com/mailman/listinfo/omniorb-list
>>
>
>




More information about the omniORB-list mailing list