Here's the full code:

ServiceReference reference =
context.getServiceReference(IProvisioningAgent.SERVICE_NAME);
if (reference != null) {
 try {
IProvisioningAgent agent = (IProvisioningAgent)
context.getService(reference);
 IRepositoryManager manager = (IRepositoryManager)
agent.getService(IMetadataRepositoryManager.class.getName());
 URI[] uris =
manager.getKnownRepositories(IRepositoryManager.REPOSITORIES_ALL);
for (URI uri : uris) {
 Logger.logInfo(uri.toString());
}
} finally {
 context.ungetService(reference);
}
}

2011/3/25 Andrey Razumovsky <[email protected]>

> Thanks for the point,
>
> I've got two questions:
> 1. When I launch my plugin in PDE mode, array returned
> by 
> IRepositoryManager.getKnownRepositories(IRepositoryManager.REPOSITORIES_ALL)
> is empty. Is that expected? (maybe because installing features are not
> avaliable in PDE launch? Can I turn them on?)
> 2. IProvisioningAgent seems to be Eclipse 3.6-only class. Is there
> something that is 3.5-compatible (or maybe even 3.4)?
>
>
> 2011/3/25 DJ Houghton <[email protected]>
>
>>  It is a service so you can acquire it like any other OSGi service.
>> The code should look roughly like:
>>
>> ServiceReference reference =
>> context.getServiceReference(IProvisioningAgent.SERVICE_NAME);
>> if (reference == null)
>> return null;
>> try {
>> return context.getService(reference);
>> } finally {
>> context.ungetService(reference);
>> }
>>
>> Where "context" is your BundleContext object available from your bundle
>> activator.
>>
>>
>> [image: Inactive hide details for Andrey Razumovsky ---03/25/2011 10:34:42
>> AM---OK, great, now I need to get reference to IProvisioning]Andrey
>> Razumovsky ---03/25/2011 10:34:42 AM---OK, great, now I need to get
>> reference to IProvisioningAgent :) How can I do that?
>>
>>
>> From:
>> Andrey Razumovsky <[email protected]>
>> To:
>> P2 developer discussions <[email protected]>
>> Date:
>> 03/25/2011 10:34 AM
>> Subject:
>> Re: [p2-dev] List of update sites
>> Sent by:
>> [email protected]
>> ------------------------------
>>
>>
>>
>> OK, great, now I need to get reference to IProvisioningAgent :) How can I
>> do that?
>>
>> 2011/3/25 DJ Houghton <*[email protected]* <[email protected]>>
>>
>>    Jacek is correct. You can do a service look-up via the agent.
>>
>>
>>    IProvisioningAgent#getService(IMetadataRepositoryManager.class.getName());
>>
>>
>>    [image: Inactive hide details for Jacek Pospychała ---03/25/2011
>>    10:16:55 AM---sorry, I didn't noticed you want to "get", and not set]Jacek
>>    Pospychała ---03/25/2011 10:16:55 AM---sorry, I didn't noticed you want to
>>    "get", and not set repository... :-) Anyway, a bit of goolging p
>>
>>
>>
>> From:
>> Jacek Pospychała <*[email protected]*<[email protected]>
>> >
>> To:
>> P2 developer discussions <*[email protected]* <[email protected]>>
>> Date:
>> 03/25/2011 10:16 AM
>> Subject:
>> Re: [p2-dev] List of update sites
>> Sent by:*
>> **[email protected]* <[email protected]>
>>
>>    ------------------------------
>>
>>
>>
>>
>>    sorry, I didn't noticed you want to "get", and not set repository...
>>    :-)
>>    Anyway, a bit of goolging pointed to IRepositoryManager interface,
>>    that should do what you want. Although I'm not quite sure how to obtain
>>    reference to it.
>>
>>
>>    2011/3/25 Jacek Pospychała 
>> <*[email protected]*<[email protected]>
>>    >
>>       one option is via use of p2.inf files, e.g.:
>>
>>          instructions.configure=\
>>
>>            addRepository(type:0,enabled:false,location:http${#58}//*
>>          
>> download.eclipse.org/releases/*<http://download.eclipse.org/releases/>
>>          helios);\
>>
>>            addRepository(type:1,enabled:false,location:http${#58}//*
>>          
>> download.eclipse.org/releases/*<http://download.eclipse.org/releases/>
>>          helios);
>>
>>          you can put p2.inf file in a feature, or a plugin (META-INF
>>          folder).
>>
>>          There's some limitations though - e.g. you can't set update site
>>          name.
>>
>>          And there's some bugs, which may make your update site not
>>          added, e.g. in Windows 7
>>
>>
>>          On Fri, Mar 25, 2011 at 2:42 PM, Andrey Razumovsky <*
>>          [email protected]* <[email protected]>>
>>          wrote:
>>          Hi,
>>
>>          Is there a way to get list of configured update sites (those
>>          seen in
>>          "Avaliable Software" dropdown in "Install" dialog)
>>          programmatically?
>>
>>          Thanks,
>>          Andrey
>>          _______________________________________________
>>          p2-dev mailing list*
>>          **[email protected]* <[email protected]>*
>>          
>> **https://dev.eclipse.org/mailman/listinfo/p2-dev*<https://dev.eclipse.org/mailman/listinfo/p2-dev>
>>
>>           _______________________________________________
>>    p2-dev mailing list*
>>    **[email protected]* <[email protected]>*
>>    
>> **https://dev.eclipse.org/mailman/listinfo/p2-dev*<https://dev.eclipse.org/mailman/listinfo/p2-dev>
>>
>>
>>
>>    _______________________________________________
>>    p2-dev mailing list*
>>    **[email protected]* <[email protected]>*
>>    
>> **https://dev.eclipse.org/mailman/listinfo/p2-dev*<https://dev.eclipse.org/mailman/listinfo/p2-dev>
>>
>>
>>
>>
>> --
>> Andrey_______________________________________________
>>
>> p2-dev mailing list
>> [email protected]
>> https://dev.eclipse.org/mailman/listinfo/p2-dev
>>
>>
>>
>> _______________________________________________
>> p2-dev mailing list
>> [email protected]
>> https://dev.eclipse.org/mailman/listinfo/p2-dev
>>
>>
>
>


-- 
Andrey

<<graycol.gif>>

<<ecblank.gif>>

_______________________________________________
p2-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/p2-dev

Reply via email to