Package org.sonatype.nexus.proxy.item

Examples of org.sonatype.nexus.proxy.item.FileContentLocator


    }
    else if (target.isFile() && !mustBeACollection) {
      request.setRequestPath(path);

      // FileComtentLocator is reusable, so create it only once but with correct MIME type
      final FileContentLocator fileContent = new FileContentLocator(target, getMimeSupport().guessMimeTypeFromPath(
          repository.getMimeRulesSource(), target.getAbsolutePath()));

      try {
        // Probe for link only if we KNOW it's not an attribute but "plain" content
        final boolean isAttribute = uid.getBooleanAttributeValue(IsItemAttributeMetacontentAttribute.class);
View Full Code Here


    if (item instanceof StorageFileItem) {
      // replace content locator transparently, if we just consumed a non-reusable one
      // Hint: in general, those items coming from user uploads or remote proxy caching requests are non
      // reusable ones
      ((StorageFileItem) item).setContentLocator(new FileContentLocator(target,
          ((StorageFileItem) item).getMimeType()));
    }

    final ContentLocator mdis =
        item instanceof StorageFileItem ? ((StorageFileItem) item).getContentLocator() : null;
View Full Code Here

    String path = PUBLISHING_PATH_PREFIX + "/" + file.getName();

    try {
      ResourceStoreRequest request = new ResourceStoreRequest(path);
      DefaultStorageFileItem fItem =
          new DefaultStorageFileItem(repository, request, true, true, new FileContentLocator(file,
              mimeSupport.guessMimeTypeFromPath(repository.getMimeRulesSource(), file.getAbsolutePath())));

      if (context.getTimestamp() == null) {
        fItem.setModified(0);
View Full Code Here

  protected void sneakyDeployAFile(String path, File file)
      throws Exception
  {
    ResourceStoreRequest request = new ResourceStoreRequest(path);

    FileContentLocator fc = new FileContentLocator(file, mimeSupport.guessMimeTypeFromPath(file.getName()));

    StorageFileItem item = new DefaultStorageFileItem(snapshots, request, true, true, fc);

    // deploy jar to storage
    snapshots.getLocalStorage().storeItem(snapshots, item);
View Full Code Here

  private void deployFile(MavenRepository repository, String repoFrom, String path)
      throws IOException, UnsupportedStorageOperationException
  {
    File repos = new File(getBasedir(), "src/test/resources/reposes").getCanonicalFile();
    FileContentLocator content = new FileContentLocator(new File(repos, repoFrom + path), "mime-type");
    ResourceStoreRequest request = new ResourceStoreRequest(path);
    StorageItem item = new DefaultStorageFileItem(repository, request, true, true, content);
    repository.getLocalStorage().storeItem(repository, item);
  }
View Full Code Here

        log.debug("getMirrorsItemRemote: mirrorURL=" + mirrorDOM.getAttribute("url"));
        repositoryDom.addChild(mirrorDOM);
      }
    }

    final FileContentLocator fileContentLocator = new FileContentLocator("text/xml");
    try {
      try (OutputStream buffer = fileContentLocator.getOutputStream();) {
        final MXSerializer mx = new MXSerializer();
        mx.setProperty("http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  ");
        mx.setProperty("http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n");
        final String encoding = "UTF-8";
        mx.setOutput(buffer, encoding);
        mx.startDocument(encoding, null);
        mirrorsByRepositoryDom.writeToSerializer(null, mx);
        mx.flush();
      }

      final DefaultStorageFileItem result =
          new DefaultStorageFileItem(this, new ResourceStoreRequest(PRIVATE_MIRRORS_PATH),
              true /* isReadable */, false /* isWritable */, fileContentLocator);
      return doCacheItem(result);
    }
    finally {
      fileContentLocator.delete();
    }
  }
View Full Code Here

                                                      final String hack,
                                                      final RequestContext context)
      throws IOException
  {
    // this is a special one: once cached (hence consumed), temp file get's deleted
    final FileContentLocator fileContentLocator = new FileContentLocator("text/xml");
    try (OutputStream buffer = fileContentLocator.getOutputStream()) {
      final MXSerializer mx = new MXSerializer();
      mx.setProperty("http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  ");
      mx.setProperty("http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n");
      final String encoding = "UTF-8";
      mx.setOutput(buffer, encoding);
View Full Code Here

  {
    final Manifest manifest = new Manifest();
    manifest.getMainAttributes().put(Attributes.Name.MANIFEST_VERSION, "1.0");

    // this is a special one: once cached (hence consumed), temp file gets deleted
    final FileContentLocator fileContentLocator = new FileContentLocator("application/java-archive");


    try (OutputStream buffer = fileContentLocator.getOutputStream();
         ZipOutputStream out = new ZipOutputStream(buffer);
         InputStream in = metadataXml.getInputStream()) {
      out.putNextEntry(new JarEntry(metadataXml.getName()));
      IOUtils.copy(in, out);
    }
View Full Code Here

    final File source = new File(baseDir, relPath);

    final ResourceStoreRequest request = new ResourceStoreRequest(relPath);

    final DefaultStorageFileItem file =
        new DefaultStorageFileItem(this, request, source.canRead(), source.canWrite(), new FileContentLocator(
            source, getMimeSupport().guessMimeTypeFromPath(source.getName())));
    file.setModified(source.lastModified());
    file.setCreated(source.lastModified());

    storeItem(false, file);
View Full Code Here

  }

  private void storeItemFromFile(final String path, final File file, final P2ProxyRepository repository)
      throws LocalStorageException, UnsupportedStorageOperationException
  {
    final ContentLocator content = new FileContentLocator(file, "text/xml");
    final DefaultStorageFileItem storageItem =
        new DefaultStorageFileItem(repository, new ResourceStoreRequest(path), true /* isReadable */,
            false /* isWritable */, content);
    repository.getLocalStorage().storeItem(repository, storageItem);
  }
View Full Code Here

TOP

Related Classes of org.sonatype.nexus.proxy.item.FileContentLocator

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.