[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [equinox-dev] Using Equinox Hooks for handling application starting?

Thanks for answering, Thomas!

Yes, my idea was to put the client and server into the application. The
server starts as a separate thread in the background and the hook contains
the client which tries to connect to the server. If no server is found, I
want to leave the current running instance starting, so in my case I have
nothing to do in the hook. In the other case, to connect to another
instance, I want to stop the current instance. You say that it I cannot stop
the osgi platform in my hook? Is there really no oppurtunity for doing that?
What about system.exit()?? :-) I think, that should be the last solution...
I have seen the class OSGi and the method close(). Can I reference it
somehow? Maybe I can use AspectJ for get an reference to an instance of
OSGi?

Thanks,
Jens



Thomas Watson wrote:
> 
> 
> See https://bugs.eclipse.org/bugs/show_bug.cgi?id=178927 for an
> enhancement
> request that is similar to what you require.
> 
> The Equinox Hook (AdaptorHook.startFramework method) will not be
> sufficient
> for implementing this.  You can get the command line by using the
> EnvironmentInfo service in you hook.  You are passed a BundleContext which
> you could use to get the EnvironmentInfo service.  This service has the
> methods you need to get the command line arguments.  But there is no way
> from the startFramework method to tell the platform not to start the
> application.  When Eclipse RCP is launched it is configured with an
> application to launch.  You still want this application to be configured
> to
> launch in case there is no running instance of your application yet.  So
> even though you processed the command line in your adaptor hook and
> communicated with another running instance the platform will continue to
> boot and attempt to start your application.  At that point your
> application
> could determine that a command line was used to communicate with another
> instance and return immediately.  If you already have to enter your
> application each time then you might as well just put all the TCP
> client/server logic directly in your application and have it determine
> whether it should pass the information off to another running instance of
> your application and return immediately or process the request directly
> because it is the first running instance of the application.
> 
> Tom
> 
> 
> 
> 
>                                                                        
>   From:       Jens Goldhammer <goldhammerdev@xxxxxxxxxxxxxx>           
>                                                                        
>   To:         equinox-dev@xxxxxxxxxxx                                  
>                                                                        
>   Date:       02/03/2009 05:46 AM                                      
>                                                                        
>   Subject:    [equinox-dev] Using Equinox Hooks for handling application
> starting?
>                                                                        
> 
> 
> 
> 
> 
> 
> Hello,
> 
> We implemented a rcp application which can be started either by clicking
> the
> application file (.exe) or by doubleclicking a file (with a certain
> fileextension) on the filesystem. The problem is that we want to handle a
> doubleclick on this file by extracting its information and show a dialog
> in
> our application. There are two possibilites: There is already an running
> instance or we have to start a new one.
> 
> It seems to me that the Equinox Hook can be a friend in this case. Read
> the
> proposed solution under
> http://www.ibm.com/developerworks/library/os-eclipse-rcpurl/index.html, I
> have the idea to put the uri client into an Equinox hook. Either I can
> call
> the other instance via TCP (and close the new one) or run the current
> instance if there is no other instance open.
> 
> The problem is now that I have to parse the commandline to get out the
> filepath of the file which was used to start our application. Is there a
> way
> to do that in the hook frameworkstart method? How can I close the osgi
> platform if there is another instance which can handle the file?
> 
> Thanks,
> Jens
> --
> View this message in context:
> http://www.nabble.com/Using-Equinox-Hooks-for-handling-application-starting--tp21808278p21808278.html
> 
> Sent from the Equinox - Dev mailing list archive at Nabble.com.
> 
> _______________________________________________
> equinox-dev mailing list
> equinox-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/equinox-dev
> 
> 
>  
>  
> _______________________________________________
> equinox-dev mailing list
> equinox-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/equinox-dev
> 
> 

-- 
View this message in context: http://www.nabble.com/Using-Equinox-Hooks-for-handling-application-starting--tp21808278p21814525.html
Sent from the Equinox - Dev mailing list archive at Nabble.com.