Example #1
0
    protected List<ProvisioningAction> getActions(InstallableUnitOperand operand) {
      IInstallableUnit unit = operand.second();
      List<ProvisioningAction> parsedActions = getActions(unit, phaseId);
      if (parsedActions != null) return parsedActions;

      ITouchpointType type = unit.getTouchpointType();
      if (type == null || type == ITouchpointType.NONE) return null;

      String actionId = getActionManager().getTouchpointQualifiedActionId(phaseId, type);
      ProvisioningAction action = getActionManager().getAction(actionId, null);
      if (action == null) {
        throw new IllegalArgumentException("action not found: " + phaseId);
      }
      return Collections.singletonList(action);
    }
Example #2
0
 private static String getFragmentHost(IInstallableUnit unit, String fragmentName) {
   Collection<IRequirement> requires = unit.getRequirements();
   for (IRequirement iRequirement : requires) {
     if (iRequirement instanceof IRequiredCapability) {
       IRequiredCapability requiredCapability = (IRequiredCapability) iRequirement;
       if (fragmentName.equals(requiredCapability.getName())) {
         String fragmentHost = requiredCapability.getName();
         if (!requiredCapability.getRange().toString().equals("0.0.0")) { // $NON-NLS-1$
           fragmentHost +=
               ";bundle-version=\"" + requiredCapability.getRange() + '"'; // $NON-NLS-1$
         }
         return fragmentHost;
       }
     }
   }
   return null;
 }
 private void verifyLauncherArgs(IInstallableUnit iu) {
   Collection<ITouchpointData> touchpointData = iu.getTouchpointData();
   assertEquals(1, touchpointData.size());
   ITouchpointData data = touchpointData.iterator().next();
   ITouchpointInstruction instruction = data.getInstruction("configure"); // $NON-NLS-1$
   String body = instruction.getBody();
   assertTrue(
       "arg -foo bar",
       body.indexOf("addProgramArg(programArg:-foo bar);") > -1); // $NON-NLS-1$ //$NON-NLS-2$
   assertTrue(
       "vmarg -agentlib",
       body.indexOf(
               "addJvmArg(jvmArg:-agentlib${#58}jdwp=transport=dt_socket${#44}server=y${#44}suspend=n${#44}address=8272);")
           > -1); //$NON-NLS-1$ //$NON-NLS-2$
   assertTrue(
       "arg -product com,ma",
       body.indexOf("addProgramArg(programArg:-product);addProgramArg(programArg:com${#44}ma);")
           > -1); //$NON-NLS-1$ //$NON-NLS-2$
 }
 private void verifyConfigProperties(IInstallableUnit iu) {
   Collection<ITouchpointData> touchpointData = iu.getTouchpointData();
   assertEquals(1, touchpointData.size());
   ITouchpointData data = touchpointData.iterator().next();
   ITouchpointInstruction instruction = data.getInstruction("configure"); // $NON-NLS-1$
   String body = instruction.getBody();
   assertTrue(
       "eclipse.product",
       body.indexOf(
               "setProgramProperty(propName:eclipse.product,propValue:org.eclipse.platform.ide);")
           > -1); //$NON-NLS-1$ //$NON-NLS-2$
   assertTrue(
       "eclipse.buildId",
       body.indexOf("setProgramProperty(propName:eclipse.buildId,propValue:TEST-ID);")
           > -1); //$NON-NLS-1$ //$NON-NLS-2$
   assertTrue(
       "my.property",
       body.indexOf(
               "setProgramProperty(propName:my.property,propValue:${#123}a${#44}b${#58}c${#59}${#36}d${#125});")
           > -1); //$NON-NLS-1$ //$NON-NLS-2$
 }
Example #5
0
  public static BundleInfo createBundleInfo(File bundleFile, IInstallableUnit unit) {
    BundleInfo bundleInfo = new BundleInfo();
    if (bundleFile != null) bundleInfo.setLocation(bundleFile.toURI());

    Collection<IProvidedCapability> capabilities = unit.getProvidedCapabilities();
    for (IProvidedCapability capability : capabilities) {
      String nameSpace = capability.getNamespace();
      if (nameSpace.equals("osgi.bundle")) { // $NON-NLS-1$
        bundleInfo.setSymbolicName(capability.getName());
        bundleInfo.setVersion(capability.getVersion().toString());
      } else if (nameSpace.equals("osgi.fragment")) { // $NON-NLS-1$
        String fragmentName = capability.getName();
        String fragmentHost = getFragmentHost(unit, fragmentName);
        // shouldn't happen as long as the metadata is well-formed
        if (fragmentHost == null)
          LogHelper.log(createError("Unable to find fragment host for IU: " + unit)); // $NON-NLS-1$
        else bundleInfo.setFragmentHost(fragmentHost);
        bundleInfo.setVersion(capability.getVersion().toString());
      }
    }
    return bundleInfo;
  }