org.jboss.osgi.resolver.v2
Class XResourceBuilder

java.lang.Object
  extended by org.jboss.osgi.resolver.v2.XResourceBuilder
Direct Known Subclasses:
AbstractResourceBuilder

public abstract class XResourceBuilder
extends Object

A builder for resolver modules

Since:
02-Jul-2010
Author:
thomas.diesler@jboss.com

Field Summary
static Map<String,Object> EMPTY_ATTRIBUTES
           
static Map<String,String> EMPTY_DIRECTIVES
           
protected  AbstractResource resource
           
 
Constructor Summary
protected XResourceBuilder()
           
protected XResourceBuilder(XResource resource)
           
 
Method Summary
abstract  XRequirement addDynamicPackageRequirement(String name, Map<String,Object> atts, Map<String,String> dirs)
          Add a Constants.DYNAMICIMPORT_PACKAGE requirement
abstract  XCapability addGenericCapability(String namespace, Map<String,Object> atts, Map<String,String> dirs)
          Add a generic Capability
abstract  XRequirement addGenericRequirement(String namespace, Map<String,Object> atts, Map<String,String> dirs)
          Add a generic Requirement
abstract  XCapability addHostCapability(String symbolicName, org.osgi.framework.Version version, Map<String,Object> atts, Map<String,String> dirs)
          Add the fragment host capability
abstract  XRequirement addHostRequirement(String symbolicName, Map<String,Object> atts, Map<String,String> dirs)
          Add fragment host requirement
abstract  XCapability addIdentityCapability(String symbolicName, org.osgi.framework.Version version, String type, Map<String,Object> atts, Map<String,String> dirs)
          Add the identity capability
abstract  XRequirement addIdentityRequirement(String symbolicName, Map<String,Object> atts, Map<String,String> dirs)
          Add identity requirement
abstract  XCapability addPackageCapability(String name, Map<String,Object> atts, Map<String,String> dirs)
          Add a Constants.EXPORT_PACKAGE capability
abstract  XRequirement addPackageRequirement(String name, Map<String,Object> atts, Map<String,String> dirs)
          Add a Constants.IMPORT_PACKAGE requirement
static XResourceBuilder create()
          Create an empty resource builder
static XResourceBuilder create(URL baseURL, String contentPath)
          Create a resource builder based on a given base URL and content path.
static XResourceBuilder create(XResource resource)
          Create an empty resource builder from a given resource.
 XResource getResource()
          Get the final resource from the builder
abstract  XResourceBuilder load(org.jboss.osgi.metadata.OSGiMetaData metadata)
          Create requirements/capabilities from OSGi metadata
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EMPTY_ATTRIBUTES

public static final Map<String,Object> EMPTY_ATTRIBUTES

EMPTY_DIRECTIVES

public static final Map<String,String> EMPTY_DIRECTIVES

resource

protected AbstractResource resource
Constructor Detail

XResourceBuilder

protected XResourceBuilder()

XResourceBuilder

protected XResourceBuilder(XResource resource)
Method Detail

create

public static XResourceBuilder create()
Create an empty resource builder


create

public static XResourceBuilder create(XResource resource)
Create an empty resource builder from a given resource.


create

public static XResourceBuilder create(URL baseURL,
                                      String contentPath)
Create a resource builder based on a given base URL and content path.


load

public abstract XResourceBuilder load(org.jboss.osgi.metadata.OSGiMetaData metadata)
                               throws org.osgi.framework.BundleException
Create requirements/capabilities from OSGi metadata

Parameters:
metadata - The OSGi metadata
Throws:
org.osgi.framework.BundleException

addIdentityCapability

public abstract XCapability addIdentityCapability(String symbolicName,
                                                  org.osgi.framework.Version version,
                                                  String type,
                                                  Map<String,Object> atts,
                                                  Map<String,String> dirs)
Add the identity capability

Parameters:
symbolicName - The resource symbolic name
version - The resource version
type - The resource type
atts - The attributes
dirs - The directives

addIdentityRequirement

public abstract XRequirement addIdentityRequirement(String symbolicName,
                                                    Map<String,Object> atts,
                                                    Map<String,String> dirs)
Add identity requirement

Parameters:
symbolicName - The bundle symbolic name
atts - The attributes
dirs - The directives

addHostCapability

public abstract XCapability addHostCapability(String symbolicName,
                                              org.osgi.framework.Version version,
                                              Map<String,Object> atts,
                                              Map<String,String> dirs)
Add the fragment host capability

Parameters:
symbolicName - The resource symbolic name
version - The resource version
atts - The attributes
dirs - The directives

addHostRequirement

public abstract XRequirement addHostRequirement(String symbolicName,
                                                Map<String,Object> atts,
                                                Map<String,String> dirs)
Add fragment host requirement

Parameters:
symbolicName - The bundle symbolic name
atts - The attributes
dirs - The directives

addPackageCapability

public abstract XCapability addPackageCapability(String name,
                                                 Map<String,Object> atts,
                                                 Map<String,String> dirs)
Add a Constants.EXPORT_PACKAGE capability

Parameters:
name - The package name
atts - The attributes
dirs - The directives

addPackageRequirement

public abstract XRequirement addPackageRequirement(String name,
                                                   Map<String,Object> atts,
                                                   Map<String,String> dirs)
Add a Constants.IMPORT_PACKAGE requirement

Parameters:
name - The package name
atts - The attributes
dirs - The directives

addDynamicPackageRequirement

public abstract XRequirement addDynamicPackageRequirement(String name,
                                                          Map<String,Object> atts,
                                                          Map<String,String> dirs)
Add a Constants.DYNAMICIMPORT_PACKAGE requirement

Parameters:
name - The package name
atts - The attributes

addGenericCapability

public abstract XCapability addGenericCapability(String namespace,
                                                 Map<String,Object> atts,
                                                 Map<String,String> dirs)
Add a generic Capability

Parameters:
namespace - The namespace
atts - The attributes
dirs - The directives

addGenericRequirement

public abstract XRequirement addGenericRequirement(String namespace,
                                                   Map<String,Object> atts,
                                                   Map<String,String> dirs)
Add a generic Requirement

Parameters:
namespace - The namespace
atts - The attributes
dirs - The directives

getResource

public XResource getResource()
Get the final resource from the builder



Copyright © 2012. All Rights Reserved.