private AuthenticationSelector getAuthSelector() {
    DefaultAuthenticationSelector selector = new DefaultAuthenticationSelector();

    Collection<String> ids = new HashSet<String>();
    for (Authentication auth : authentications) {
      List<String> servers = auth.getServers();
      if (!servers.isEmpty()) {
        org.sonatype.aether.repository.Authentication a = ConverterUtils.toAuthentication(auth);
        for (String server : servers) {
          if (ids.add(server)) {
            selector.add(server, a);
          }
        }
      }
    }

    Settings settings = getSettings();
    for (Server server : settings.getServers()) {
      org.sonatype.aether.repository.Authentication auth =
          new org.sonatype.aether.repository.Authentication(
              server.getUsername(), server.getPassword(),
              server.getPrivateKey(), server.getPassphrase());
      selector.add(server.getId(), auth);
    }

    return new ConservativeAuthenticationSelector(selector);
  }
 private Properties getSystemProperties() {
   Properties props = new Properties();
   getEnvProperties(props);
   props.putAll(System.getProperties());
   ConverterUtils.addProperties(props, project.getProperties());
   return props;
 }
Ejemplo n.º 3
0
  /**
   * Assumes the first line of the file contains the attribute names. Assumes all attributes are
   * real (Reading the full data set with getDataSet will establish the true structure).
   *
   * @param tokenizer a <code>StreamTokenizer</code> value
   * @exception IOException if an error occurs
   *     <pre><jml>
   *    private_normal_behavior
   *      requires: tokenizer != null;
   *      modifiable: m_structure;
   *      ensures: m_structure != null;
   *  also
   *    private_exceptional_behavior
   *      requires: tokenizer == null
   *                || (* unsucessful parse *);
   *      signals: (IOException);
   * </jml></pre>
   */
  private void readHeader(StreamTokenizer tokenizer) throws IOException {

    ArrayList<Attribute> attribNames = new ArrayList<Attribute>();
    ConverterUtils.getFirstToken(tokenizer);
    if (tokenizer.ttype == StreamTokenizer.TT_EOF) {
      ConverterUtils.errms(tokenizer, "premature end of file");
    }

    while (tokenizer.ttype != StreamTokenizer.TT_EOL) {
      attribNames.add(new Attribute(tokenizer.sval));
      ConverterUtils.getToken(tokenizer);
    }
    String relationName;
    if (m_sourceFile != null)
      relationName = (m_sourceFile.getName()).replaceAll("\\.[cC][sS][vV]$", "");
    else relationName = "stream";
    m_structure = new Instances(relationName, attribNames, 0);
  }
  public Model loadModel(
      Task task, File pomFile, boolean local, RemoteRepositories remoteRepositories) {
    RepositorySystemSession session = getSession(task, null);

    remoteRepositories =
        remoteRepositories == null
            ? AetherUtils.getDefaultRepositories(project)
            : remoteRepositories;

    List<org.sonatype.aether.repository.RemoteRepository> repositories =
        ConverterUtils.toRepositories(
            task.getProject(), session, remoteRepositories, getRemoteRepoMan());

    ModelResolver modelResolver =
        new AntModelResolver(session, "project", getSystem(), getRemoteRepoMan(), repositories);

    Settings settings = getSettings();

    try {
      DefaultModelBuildingRequest request = new DefaultModelBuildingRequest();
      request.setLocationTracking(true);
      request.setProcessPlugins(false);
      if (local) {
        request.setPomFile(pomFile);
        request.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_STRICT);
      } else {
        request.setModelSource(new FileModelSource(pomFile));
        request.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL);
      }
      request.setSystemProperties(getSystemProperties());
      request.setUserProperties(getUserProperties());
      request.setProfiles(SettingsUtils.convert(settings.getProfiles()));
      request.setActiveProfileIds(settings.getActiveProfiles());
      request.setModelResolver(modelResolver);
      return modelBuilder.build(request).getEffectiveModel();
    } catch (ModelBuildingException e) {
      throw new BuildException("Could not load POM " + pomFile + ": " + e.getMessage(), e);
    }
  }
  private ProxySelector getProxySelector() {
    DefaultProxySelector selector = new DefaultProxySelector();

    for (Proxy proxy : proxies) {
      selector.add(ConverterUtils.toProxy(proxy), proxy.getNonProxyHosts());
    }

    Settings settings = getSettings();
    for (org.apache.maven.settings.Proxy proxy : settings.getProxies()) {
      org.sonatype.aether.repository.Authentication auth = null;
      if (proxy.getUsername() != null || proxy.getPassword() != null) {
        auth =
            new org.sonatype.aether.repository.Authentication(
                proxy.getUsername(), proxy.getPassword());
      }
      selector.add(
          new org.sonatype.aether.repository.Proxy(
              proxy.getProtocol(), proxy.getHost(), proxy.getPort(), auth),
          proxy.getNonProxyHosts());
    }

    return selector;
  }
  public CollectResult collectDependencies(
      Task task,
      Dependencies dependencies,
      LocalRepository localRepository,
      RemoteRepositories remoteRepositories) {
    RepositorySystemSession session = getSession(task, localRepository);

    remoteRepositories =
        remoteRepositories == null
            ? AetherUtils.getDefaultRepositories(project)
            : remoteRepositories;

    List<org.sonatype.aether.repository.RemoteRepository> repos =
        ConverterUtils.toRepositories(project, session, remoteRepositories, getRemoteRepoMan());

    CollectRequest collectRequest = new CollectRequest();
    collectRequest.setRequestContext("project");

    for (org.sonatype.aether.repository.RemoteRepository repo : repos) {
      task.getProject().log("Using remote repository " + repo, Project.MSG_VERBOSE);
      collectRequest.addRepository(repo);
    }

    if (dependencies != null) {
      List<Exclusion> globalExclusions = dependencies.getExclusions();
      Collection<String> ids = new HashSet<String>();

      for (Dependency dep : dependencies.getDependencies()) {
        ids.add(dep.getVersionlessKey());
        collectRequest.addDependency(ConverterUtils.toDependency(dep, globalExclusions, session));
      }

      if (dependencies.getPom() != null) {
        Model model = dependencies.getPom().getModel(task);
        for (org.apache.maven.model.Dependency dep : model.getDependencies()) {
          Dependency dependency = new Dependency();
          dependency.setArtifactId(dep.getArtifactId());
          dependency.setClassifier(dep.getClassifier());
          dependency.setGroupId(dep.getGroupId());
          dependency.setScope(dep.getScope());
          dependency.setType(dep.getType());
          dependency.setVersion(dep.getVersion());
          if (ids.contains(dependency.getVersionlessKey())) {
            continue;
          }
          if (dep.getSystemPath() != null && dep.getSystemPath().length() > 0) {
            dependency.setSystemPath(task.getProject().resolveFile(dep.getSystemPath()));
          }
          for (org.apache.maven.model.Exclusion exc : dep.getExclusions()) {
            Exclusion exclusion = new Exclusion();
            exclusion.setGroupId(exc.getGroupId());
            exclusion.setArtifactId(exc.getArtifactId());
            exclusion.setClassifier("*");
            exclusion.setExtension("*");
            dependency.addExclusion(exclusion);
          }
          collectRequest.addDependency(
              ConverterUtils.toDependency(dependency, globalExclusions, session));
        }
      }
    }

    task.getProject().log("Collecting dependencies", Project.MSG_VERBOSE);

    CollectResult result;
    try {
      result = getSystem().collectDependencies(session, collectRequest);
    } catch (DependencyCollectionException e) {
      throw new BuildException("Could not collect dependencies: " + e.getMessage(), e);
    }

    return result;
  }
 private Properties getUserProperties() {
   return ConverterUtils.addProperties(null, project.getUserProperties());
 }
Ejemplo n.º 8
0
  /**
   * Attempts to parse a line of the data set.
   *
   * @param tokenizer the tokenizer
   * @return a ArrayList containg String and Double objects representing the values of the instance.
   * @exception IOException if an error occurs
   *     <pre><jml>
   *    private_normal_behavior
   *      requires: tokenizer != null;
   *      ensures: \result  != null;
   *  also
   *    private_exceptional_behavior
   *      requires: tokenizer == null
   *                || (* unsucessful parse *);
   *      signals: (IOException);
   * </jml></pre>
   */
  private ArrayList<Object> getInstance(StreamTokenizer tokenizer) throws IOException {

    ArrayList<Object> current = new ArrayList<Object>();

    // Check if end of file reached.
    ConverterUtils.getFirstToken(tokenizer);
    if (tokenizer.ttype == StreamTokenizer.TT_EOF) {
      return null;
    }
    boolean first = true;
    boolean wasSep;

    while (tokenizer.ttype != StreamTokenizer.TT_EOL && tokenizer.ttype != StreamTokenizer.TT_EOF) {

      // Get next token
      if (!first) {
        ConverterUtils.getToken(tokenizer);
      }

      if (tokenizer.ttype == m_FieldSeparator.charAt(0)
          || tokenizer.ttype == StreamTokenizer.TT_EOL) {
        current.add(m_MissingValue);
        wasSep = true;
      } else {
        wasSep = false;
        if (tokenizer.sval.equals(m_MissingValue)) {
          current.add(new String(m_MissingValue));
        } else {
          // try to parse as a number
          try {
            double val = Double.valueOf(tokenizer.sval).doubleValue();
            current.add(new Double(val));
          } catch (NumberFormatException e) {
            // otherwise assume its an enumerated value
            current.add(new String(tokenizer.sval));
          }
        }
      }

      if (!wasSep) {
        ConverterUtils.getToken(tokenizer);
      }
      first = false;
    }

    // check number of values read
    if (current.size() != m_structure.numAttributes()) {
      ConverterUtils.errms(
          tokenizer,
          "wrong number of values. Read "
              + current.size()
              + ", expected "
              + m_structure.numAttributes());
    }

    // check for structure update
    try {
      checkStructure(current);
    } catch (Exception ex) {
      ex.printStackTrace();
    }

    return current;
  }
  private String jsonToHtml(SkysailResponse<List<?>> skysailResponse, Resource resource) {

    PresentationStyle styleOldp = ConverterUtils.evalPresentationStyle(resource);
    PresentationStyle style = skysailResponse.getPresentationStyleHint();

    String page = rootTemplate;
    long executionTimeInNanos = skysailResponse.getExecutionTime();
    float performance = new Long(1000000000) / executionTimeInNanos;
    page = page.replace("${performance}", String.format("%s", performance));
    page = page.replace("${result}", calcResult(skysailResponse));
    page =
        page.replace(
            "${message}",
            skysailResponse.getMessage() == null
                ? "no message available"
                : skysailResponse.getMessage());
    page = page.replace("${linkedPages}", linkedPages(resource));
    page = page.replace("${commands}", commands(resource));
    page = page.replace("${presentations}", presentations(skysailResponse));
    page = page.replace("${filterExpression}", getFilter());
    page = page.replace("${history}", "");
    page =
        page.replace(
            "${mainNav}",
            getMainNav(((SkysailApplication) resource.getApplication()).getBundleContext()));

    String username = "******";
    // if (resource.getRequest().getChallengeResponse() != null) {
    // username = resource.getRequest().getChallengeResponse().getIdentifier();
    // }
    Subject subject = SecurityUtils.getSubject();
    if (subject.getPrincipal() != null) {
      username = subject.getPrincipal().toString();
    }
    page =
        page.replace(
            "${username}",
            "<li><a href='#'><i class=\"icon-user icon-white\"></i>&nbsp;"
                + username
                + "</a></li>\n");

    if (subject.getPrincipal() != null) {
      page = page.replace("${loginLogout}", "<a href='/logout?targetUri=/'>[Logout]</a>");
    } else {
      page = page.replace("${loginLogout}", "<a href='/login?media=htmlform'>[Login]</a>");
    }

    page =
        page.replace(
            "${productName}",
            ((SkysailApplication) resource.getApplication()).getConfigForKey("productName"));

    Object skysailResponseAsObject = skysailResponse.getData();
    if (skysailResponseAsObject != null) {
      if (style.equals(PresentationStyle.LIST)) {
        StrategyContext context = new StrategyContext(new ListForContentStrategy());
        page = context.createHtml(page, skysailResponseAsObject, skysailResponse);
      } else if (style.equals(PresentationStyle.LIST2)) {
        StrategyContext context =
            new StrategyContext(
                new ListForContentStrategy2(
                    ((SkysailApplication) resource.getApplication()).getBundleContext(), resource));
        page = context.createHtml(page, skysailResponseAsObject, skysailResponse);
      } else if (style.equals(PresentationStyle.TABLE)) {
        StrategyContext context = new StrategyContext(new TableForContentStrategy());
        page = context.createHtml(page, skysailResponseAsObject, skysailResponse);
      } else if (style.equals(PresentationStyle.EDIT)) {
        StrategyContext context = new StrategyContext(new FormForContentStrategy());
        page = context.createHtml(page, skysailResponseAsObject, skysailResponse);
      } else if (style.equals(PresentationStyle.D3_SIMPLE_GRAPH)) {
        page = createD3SimpleGraphForContent(skysailResponseAsObject, skysailResponse);
      } else if (style.equals(PresentationStyle.IFRAME)) {
        StrategyContext context = new StrategyContext(new IFrameForContentStrategy());
        page = context.createHtml(page, skysailResponseAsObject, skysailResponse);
      } else if (style.equals(PresentationStyle.ACE_EDITOR)) {
        StrategyContext context = new StrategyContext(new AceEditorForContentStrategy());
        page = context.createHtml(page, skysailResponseAsObject, skysailResponse);
      }
    } else {
      if (skysailResponse instanceof ConstraintViolationsResponse) {
        StrategyContext context = new StrategyContext(new FormForContentStrategy());
        page = context.createHtml(page, skysailResponseAsObject, skysailResponse);
      } else {
        page = page.replace("${content}", "");
      }
    }

    StringBuilder breadcrumb = getBreadcrumbHtml(resource);
    page = page.replace("${breadcrumb}", breadcrumb.toString());

    String stacktrace = "";
    if (skysailResponse instanceof FailureResponse) {
      Exception exception = ((FailureResponse<?>) skysailResponse).getException();
      if (exception != null) {
        StringWriter sw = new StringWriter();
        PrintWriter pw = new PrintWriter(sw);
        exception.printStackTrace(pw);
        stacktrace = "<pre>" + sw.toString() + "</pre>";
      }
    }
    page = page.replace("${stacktrace}", stacktrace);
    return page;
  }