import javax.ws.rs.GET;
import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
@RedbackAuthorization( permission = ArchivaRoleConstants.OPERATION_RUN_INDEXER )
Boolean scanRepository( @QueryParam( "repositoryId" ) String repositoryId,
@QueryParam( "fullScan" ) boolean fullScan );
+
+
+ @Path( "alreadyScanning/{repositoryId}" )
+ @GET
+ @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN } )
+ @RedbackAuthorization( permission = ArchivaRoleConstants.OPERATION_RUN_INDEXER )
+ Boolean alreadyScanning( @PathParam( "repositoryId" ) String repositoryId );
}
import javax.inject.Inject;
import javax.inject.Named;
+import javax.ws.rs.PathParam;
import java.util.ArrayList;
import java.util.List;
}
return true;
}
+
+ public Boolean alreadyScanning( String repositoryId )
+ {
+ return repositoryTaskScheduler.isProcessingRepositoryTask( repositoryId );
+ }
}
RepositoriesService service = getRepositoriesService();
WebClient.client( service ).header( "Authorization", authorizationHeader );
WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( 300000 );
- assertTrue( service.scanRepository( service.getManagedRepositories().get( 0 ).getId(), true ) );
+ String repoId = service.getManagedRepositories().get( 0 ).getId();
+ assertTrue( service.scanRepository( repoId, true ) );
+
+ log.info( "sanRepo call ok " );
+
+ assertTrue( service.alreadyScanning( repoId ) );
+
}
}
<logger name="org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor">
<level value="trace"/>
</logger>
+ -->
<logger name="org.apache.cxf.jaxrs.utils.JAXRSUtils">
<level value="trace"/>
</logger>
- -->
+
<logger name="org.codehaus.redback.rest.services" >
<level value="debug"/>
</logger>