Search Mailing List Archives


Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[protege-discussion] ProtegeJob class

Jonathan Carter jonathan.carter at e-asolutions.com
Fri May 2 00:27:42 PDT 2008


Thanks very much for your help Timothy!

This is excellent

Jonathan
__________________________________________
Jonathan Carter - Head of Technical Architecture
Enterprise Architecture Solutions Ltd
__________________________________________

Assess your EA maturity at:
www.enterprise-architecture.com/EAvaluator
__________________________________________

On 2 May 2008, at 05:40, Timothy Redmond wrote:

>
> Your approach sounds good.  ProtegeJob's are very flexible and are
> good for performance and unanticipated extensions to the client-server
> behavior.
>
>> Does this require that I deploy the my .class file for my
>> ProtegeJob on the server or is that all handled at runtime by the
>> ProtegeJob abstract class?
>> That is, there is no code deployment to the server required?
>
>
> By default the Protege server class loaders must already be able to
> find the ProtegeJob in question.  So the jar containing the ProtegeJob
> must already be in a plugin on the server.
>
> However with rmi it is quite possible to have classes get loaded
> dynamically.  I have not tried this with the Protege server and so I
> don't know whether their are any pitfalls.
>
> The one thing that needs some explanation is the notion of
> localization.  I  am not sure how best to explain this and will try to
> write a wiki soon.  The point is that knowledge bases are not
> transfered in the usual serialization between the Protege server and
> client.  So after a remote object is transferred to or from the server
> the knowledge base is lost from the transferred object.  The localize
> method is an opportunity for this knowledge base to be restored.
>
> So for example, we might have the following
>
>   public class MyProtegeJob extends ProtegeJob {
>       private Frame frameToBeModifiedOnServer;
>         ...
>       @Override
>       public localize(KnowledgeBase kb) {
>         super.localize(kb);
>         frameToBeModifiedOnServer.localize(kb);
>       }
>    }
>
> The localize method ensures that when the ProtegeJob arrives on the
> server the correct knowledge base is placed in the frameToBeModified.
>
> This might sound complicated but it isn't too bad and generally it
> just works.
>
> -Timothy
>
>
>
> On May 1, 2008, at 8:46 AM, Jonathan Carter wrote:
>> Hi,
>>
>> I want to be able to schedule my Protege server to perform certain
>> activities on projects.
>> Having done some research around the wiki and so on, it seems that
>> the ProtegeJob abstract class is just what I need.
>> However, I'm a little unsure about how to use it and would like to
>> confirm my approach before I go down a blind alley.
>>
>> So, my approach will be:
>>
>> 1. Create a class the extends ProtegeJob and in the run() method,
>> performs the activities I want to perform.
>> 2. Create a class that is a client of the Protege server which does
>> the following:
>> 	a. Connect to the server
>> 	b. Instruct it to load the specified project (not the meta project)
>> 	c. Instantiate my ProtegeJob class
>> 	d. Call execute() on my ProtegeJob class
>>
>> I like the sound of the documentation that suggests that in this
>> mode, the Protege job is copied to the server to be run there. Does
>> this require that I deploy the my .class file for my ProtegeJob on
>> the server or is that all handled at runtime by the ProtegeJob
>> abstract class?
>> That is, there is no code deployment to the server required?
>>
>> Thanks very much for your help
>>
>> Regards
>>
>> Jonathan
>> _______________________________________
>>
>> Jonathan Carter - Head of Technical Architecture
>> Enterprise Architecture Solutions Ltd
>>
>> Web: www.enterprise-architecture.com
>> _______________________________________
>>
>> Assess your EA maturity at:
>> www.enterprise-architecture.com/EAvaluator
>> _______________________________________
>>
>> W O R L D    C L A S S    A R C H I T E C T U R E
>>
>>
>>
>>
>> This message is confidential and may be privileged. It is for the
>> exclusive use of the intended recipient(s). If you are not the
>> intended recipient(s) please notify the sender and delete the
>> message immediately. Unauthorised disclosure, distribution and
>> copying of this email is strictly prohibited. The opinions expressed
>> within this message are those of the individual author. Whilst EAS
>> Ltd take reasonable steps to scan this email it does not accept
>> liability for any virus that may be contained in it. EAS Ltd, 29
>> Harley Street, London W1G 9QR. Telephone +44 (0)20 7612 4322 Fax +44
>> (0)20 7182 6749
>>
>> _______________________________________________
>> protege-discussion mailing list
>> protege-discussion at lists.stanford.edu
>> https://mailman.stanford.edu/mailman/listinfo/protege-discussion
>>
>> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
>
> _______________________________________________
> protege-discussion mailing list
> protege-discussion at lists.stanford.edu
> https://mailman.stanford.edu/mailman/listinfo/protege-discussion
>
> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.stanford.edu/pipermail/protege-discussion/attachments/20080502/70cd1079/attachment.html>


More information about the protege-discussion mailing list