Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
Sonatype Nexus (TM) Open Source Version Copyright (c) 2007-2012 Sonatype, Inc. All rights reserved. Includes the third-party code listed at http://links.sonatype.com/products/nexus/oss/attributions. This program and the accompanying materials are made available under the terms of the Eclipse Public License Version 1.0, which accompanies this distribution and is available at http://www.eclipse.org/legal/epl-v10.html. Sonatype Nexus (TM) Professional Version is available from Sonatype, Inc. "Sonatype" and "Sonatype Nexus" are trademarks of Sonatype, Inc. Apache Maven is a trademark of the Apache Software Foundation. M2eclipse is a trademark of the Eclipse Foundation. All other trademarks are the property of their respective owners.
 
 package org.sonatype.nexus.rest.repositorystatuses;
 
 
 import  javax.ws.rs.GET;
 import  javax.ws.rs.Path;
 import  javax.ws.rs.Produces;
 import  javax.ws.rs.QueryParam;
 
 import  org.codehaus.enunciate.contract.jaxrs.ResourceMethodSignature;
 import  org.restlet.Context;
 import  org.restlet.data.Request;
 import  org.restlet.data.Response;
 import  org.restlet.resource.ResourceException;
 import  org.restlet.resource.Variant;
 
 @Component( role = PlexusResource.class, hint = "RepositoryStatusesListPlexusResource" )
 @Produces( { "application/xml""application/json" } )
 {
     public static final String RESOURCE_URI = "/repository_statuses";
 
     @Override
     public Object getPayloadInstance()
     {
         return null;
     }
 
     @Override
     public String getResourceUri()
     {
         return ;
     }
 
     @Override
     {
         return new PathProtectionDescriptorgetResourceUri(), "authcBasic,perms[nexus:repostatus]" );
     }

    
Get the list of all repository statuses. The remote statuses in case of Proxy repositories are cached (to avoid network flooding). You can force the remote status recheck by adding the "forceCheck" query parameter, but be aware, that this one inbound REST Request will induce as many Nexus outbound requests as many proxy repositories you have defined.

Parameters:
forceCheck If true, will force a remote check of status (Optional).
 
     @Override
     @GET
     @ResourceMethodSignature( queryParams = { @QueryParam( "forceCheck" ) }, output = RepositoryStatusListResourceResponse.class )
     public Object get( Context context, Request request, Response response, Variant variant )
         throws ResourceException
     {
 
         RepositoryStatusListResource repoRes;
 
         Collection<Repositoryrepositories = getRepositoryRegistry().getRepositories();
 
         for ( Repository repository : repositories )
         {
             repoRes = new RepositoryStatusListResource();
 
             repoRes.setResourceURIcreateChildReferencerequestthisrepository.getId() ).toString() );
 
             repoRes.setIdrepository.getId() );
 
             repoRes.setNamerepository.getName() );
 
             repoRes.setRepoTypegetRestRepoTyperepository ) );
 
             if ( repository.getRepositoryKind().isFacetAvailableMavenRepository.class ) )
             {
                 repoRes.setRepoPolicyrepository.adaptToFacetMavenRepository.class ).getRepositoryPolicy().toString() );
            }
            repoRes.setFormatrepository.getRepositoryContentClass().getId() );
            repoRes.setStatusnew RepositoryStatusResource() );
            repoRes.getStatus().setLocalStatusrepository.getLocalStatus().toString() );
            if ( repository.getRepositoryKind().isFacetAvailableProxyRepository.class ) )
            {
                repoRes.getStatus().setRemoteStatus(
                                                     getRestRepoRemoteStatus(
                                                                              repository.adaptToFacetProxyRepository.class ),
                                                                              requestresponse ) );
                repoRes.getStatus().setProxyMode(
                                                  repository.adaptToFacetProxyRepository.class ).getProxyMode().toString() );
            }
            result.addDatarepoRes );
        }
        return result;
    }
New to GrepCode? Check out our FAQ X