mirror of https://github.com/apache/archiva.git
Package refactoring
This commit is contained in:
parent
ff06849746
commit
d3fd08be17
|
@ -135,6 +135,7 @@ public class ManagedDefaultRepositoryContent
|
|||
|
||||
private StorageAsset getAssetByPath( String assetPath )
|
||||
{
|
||||
log.debug( "Get asset {}", assetPath );
|
||||
return getStorage( ).getAsset( assetPath );
|
||||
}
|
||||
|
||||
|
|
|
@ -394,6 +394,7 @@ public class DefaultFileUploadService
|
|||
|
||||
org.apache.archiva.repository.ManagedRepository repository = repositoryRegistry.getManagedRepository(repositoryId);
|
||||
|
||||
log.debug( "Finding artifact path for {}, {}, {}, {}", groupId, artifactId, version, packaging );
|
||||
ItemSelector selector = ArchivaItemSelector.builder( )
|
||||
.withNamespace( groupId )
|
||||
.withProjectId( artifactId )
|
||||
|
|
|
@ -0,0 +1,313 @@
|
|||
package org.apache.archiva.web;/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
||||
import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
|
||||
import junit.framework.TestCase;
|
||||
import org.apache.archiva.redback.integration.security.role.RedbackRoleConstants;
|
||||
import org.apache.archiva.redback.rest.api.model.User;
|
||||
import org.apache.archiva.redback.rest.api.services.LdapGroupMappingService;
|
||||
import org.apache.archiva.redback.rest.api.services.LoginService;
|
||||
import org.apache.archiva.redback.rest.api.services.RoleManagementService;
|
||||
import org.apache.archiva.redback.rest.api.services.UserService;
|
||||
import org.apache.archiva.redback.rest.api.services.v2.AuthenticationService;
|
||||
import org.apache.archiva.redback.rest.services.BaseSetup;
|
||||
import org.apache.archiva.redback.rest.services.FakeCreateAdminService;
|
||||
import org.apache.commons.lang3.SystemUtils;
|
||||
import org.apache.cxf.common.util.Base64Utility;
|
||||
import org.apache.cxf.jaxrs.client.JAXRSClientFactory;
|
||||
import org.apache.cxf.jaxrs.client.WebClient;
|
||||
import org.apache.cxf.transport.servlet.CXFServlet;
|
||||
import org.eclipse.jetty.server.HttpConnectionFactory;
|
||||
import org.eclipse.jetty.server.Server;
|
||||
import org.eclipse.jetty.server.ServerConnector;
|
||||
import org.eclipse.jetty.server.session.SessionHandler;
|
||||
import org.eclipse.jetty.servlet.ServletContextHandler;
|
||||
import org.eclipse.jetty.servlet.ServletHolder;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.junit.runners.JUnit4;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.web.context.ContextLoaderListener;
|
||||
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import java.util.Collections;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
|
||||
/**
|
||||
* @author Olivier Lamy
|
||||
*/
|
||||
@RunWith(JUnit4.class)
|
||||
public abstract class AbstractRestServicesTest
|
||||
extends TestCase
|
||||
{
|
||||
protected Logger log = LoggerFactory.getLogger( getClass() );
|
||||
|
||||
private static AtomicReference<Server> server = new AtomicReference<>();
|
||||
private static AtomicReference<ServerConnector> serverConnector = new AtomicReference<>();
|
||||
|
||||
public String authorizationHeader = getAdminAuthzHeader();
|
||||
|
||||
/**
|
||||
* Returns the server that was started, or null if not initialized before.
|
||||
* @return
|
||||
*/
|
||||
public Server getServer() {
|
||||
return this.server.get();
|
||||
}
|
||||
|
||||
public int getServerPort() {
|
||||
ServerConnector connector = serverConnector.get();
|
||||
if (connector!=null) {
|
||||
return connector.getLocalPort();
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
JacksonJaxbJsonProvider getJsonProvider() {
|
||||
JacksonJaxbJsonProvider provider = new JacksonJaxbJsonProvider( );
|
||||
ObjectMapper mapper = new ObjectMapper( );
|
||||
mapper.registerModule( new JavaTimeModule( ) );
|
||||
provider.setMapper( mapper );
|
||||
return provider;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns true, if the server does exist and is running.
|
||||
* @return true, if server does exist and is running.
|
||||
*/
|
||||
public boolean isServerRunning() {
|
||||
return this.server.get() != null && this.server.get().isRunning();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the timeout in ms for rest requests. The timeout can be set by
|
||||
* the system property <code>rest.test.timeout</code>.
|
||||
* @return The timeout value in ms.
|
||||
*/
|
||||
public long getTimeout()
|
||||
{
|
||||
return Long.getLong( "rest.test.timeout", 1000000 );
|
||||
}
|
||||
|
||||
public static String encode( String uid, String password )
|
||||
{
|
||||
return "Basic " + Base64Utility.encode( ( uid + ":" + password ).getBytes() );
|
||||
}
|
||||
|
||||
public static String getAdminAuthzHeader()
|
||||
{
|
||||
return encode( RedbackRoleConstants.ADMINISTRATOR_ACCOUNT_NAME, BaseSetup.getAdminPwd() );
|
||||
}
|
||||
|
||||
protected String getSpringConfigLocation()
|
||||
{
|
||||
return "classpath*:spring-context.xml,classpath*:META-INF/spring-context.xml";
|
||||
}
|
||||
|
||||
|
||||
protected String getRestServicesPath()
|
||||
{
|
||||
return "restServices";
|
||||
}
|
||||
|
||||
@Before
|
||||
public void startServer()
|
||||
throws Exception
|
||||
{
|
||||
log.info("Starting server");
|
||||
log.info( "User config {}", System.getProperty( "archiva.user.configFileName" ) );
|
||||
log.info( "Appserver base {}", System.getProperty( "appserver.base" ) );
|
||||
Server myServer = new Server();
|
||||
this.server.set(myServer);
|
||||
this.serverConnector.set(new ServerConnector( myServer, new HttpConnectionFactory()));
|
||||
myServer.addConnector(serverConnector.get());
|
||||
|
||||
ServletHolder servletHolder = new ServletHolder( new CXFServlet() );
|
||||
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
|
||||
context.setResourceBase( SystemUtils.JAVA_IO_TMPDIR );
|
||||
context.setSessionHandler( new SessionHandler( ) );
|
||||
context.addServlet( servletHolder, "/" + getRestServicesPath() + "/*" );
|
||||
context.setInitParameter( "contextConfigLocation", getSpringConfigLocation() );
|
||||
context.addEventListener(new ContextLoaderListener());
|
||||
|
||||
getServer().setHandler( context );
|
||||
getServer().start();
|
||||
|
||||
if (log.isDebugEnabled())
|
||||
{
|
||||
log.debug( "Jetty dump: {}", getServer().dump() );
|
||||
}
|
||||
|
||||
log.info( "Started server on port {}", getServerPort() );
|
||||
|
||||
UserService userService = getUserService();
|
||||
|
||||
User adminUser = new User();
|
||||
adminUser.setUsername( RedbackRoleConstants.ADMINISTRATOR_ACCOUNT_NAME );
|
||||
adminUser.setPassword( BaseSetup.getAdminPwd() );
|
||||
adminUser.setFullName( "the admin user" );
|
||||
adminUser.setEmail( "toto@toto.fr" );
|
||||
if( !userService.createAdminUser( adminUser ) ) {
|
||||
log.info( "Could not create admin user." );
|
||||
}
|
||||
|
||||
FakeCreateAdminService fakeCreateAdminService = getFakeCreateAdminService();
|
||||
//assertTrue( res.booleanValue() );
|
||||
|
||||
}
|
||||
|
||||
protected FakeCreateAdminService getFakeCreateAdminService()
|
||||
{
|
||||
return JAXRSClientFactory.create(
|
||||
"http://localhost:" + getServerPort()+ "/" + getRestServicesPath() + "/fakeCreateAdminService/",
|
||||
FakeCreateAdminService.class, Collections.singletonList( getJsonProvider() ) );
|
||||
}
|
||||
|
||||
@After
|
||||
public void stopServer()
|
||||
throws Exception
|
||||
{
|
||||
if ( getServer() != null )
|
||||
{
|
||||
log.info("Stopping server");
|
||||
getServer().stop();
|
||||
}
|
||||
}
|
||||
|
||||
protected UserService getUserService()
|
||||
{
|
||||
|
||||
return getUserService( null );
|
||||
}
|
||||
|
||||
// START SNIPPET: get-user-service
|
||||
protected UserService getUserService( String authzHeader )
|
||||
{
|
||||
UserService service =
|
||||
JAXRSClientFactory.create( "http://localhost:" + getServerPort() + "/" + getRestServicesPath() + "/redbackServices/",
|
||||
UserService.class, Collections.singletonList( new JacksonJaxbJsonProvider() ) );
|
||||
|
||||
// time out for debuging purpose
|
||||
WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( getTimeout() );
|
||||
|
||||
if ( authzHeader != null )
|
||||
{
|
||||
WebClient.client( service ).header( "Authorization", authzHeader );
|
||||
}
|
||||
WebClient.client(service).header("Referer","http://localhost:"+getServerPort());
|
||||
WebClient.client( service ).accept( MediaType.APPLICATION_JSON_TYPE );
|
||||
WebClient.client( service ).type( MediaType.APPLICATION_JSON_TYPE );
|
||||
|
||||
return service;
|
||||
}
|
||||
// END SNIPPET: get-user-service
|
||||
|
||||
protected RoleManagementService getRoleManagementService( String authzHeader )
|
||||
{
|
||||
RoleManagementService service =
|
||||
JAXRSClientFactory.create( "http://localhost:" + getServerPort() + "/" + getRestServicesPath() + "/redbackServices/",
|
||||
RoleManagementService.class,
|
||||
Collections.singletonList( new JacksonJaxbJsonProvider() ) );
|
||||
|
||||
// for debuging purpose
|
||||
WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( getTimeout() );
|
||||
|
||||
if ( authzHeader != null )
|
||||
{
|
||||
WebClient.client( service ).header( "Authorization", authzHeader );
|
||||
}
|
||||
WebClient.client(service).header("Referer","http://localhost:"+getServerPort());
|
||||
|
||||
WebClient.client( service ).accept( MediaType.APPLICATION_JSON_TYPE );
|
||||
WebClient.client( service ).type( MediaType.APPLICATION_JSON_TYPE );
|
||||
|
||||
return service;
|
||||
}
|
||||
|
||||
protected LoginService getLoginService( String authzHeader )
|
||||
{
|
||||
LoginService service =
|
||||
JAXRSClientFactory.create( "http://localhost:" + getServerPort() + "/" + getRestServicesPath() + "/redbackServices/",
|
||||
LoginService.class, Collections.singletonList( getJsonProvider() ) );
|
||||
|
||||
// for debuging purpose
|
||||
WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( getTimeout() );
|
||||
|
||||
if ( authzHeader != null )
|
||||
{
|
||||
WebClient.client( service ).header( "Authorization", authzHeader );
|
||||
}
|
||||
WebClient.client(service).header("Referer","http://localhost:"+getServerPort());
|
||||
|
||||
WebClient.client( service ).accept( MediaType.APPLICATION_JSON_TYPE );
|
||||
WebClient.client( service ).type( MediaType.APPLICATION_JSON_TYPE );
|
||||
|
||||
return service;
|
||||
}
|
||||
|
||||
protected AuthenticationService getLoginServiceV2( String authzHeader )
|
||||
{
|
||||
AuthenticationService service =
|
||||
JAXRSClientFactory.create( "http://localhost:" + getServerPort() + "/" + getRestServicesPath() + "/v2/redback/",
|
||||
AuthenticationService.class, Collections.singletonList( getJsonProvider() ) );
|
||||
|
||||
// for debuging purpose
|
||||
WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( getTimeout() );
|
||||
|
||||
if ( authzHeader != null )
|
||||
{
|
||||
WebClient.client( service ).header( "Authorization", authzHeader );
|
||||
}
|
||||
WebClient.client(service).header("Referer","http://localhost:"+getServerPort());
|
||||
|
||||
WebClient.client( service ).accept( MediaType.APPLICATION_JSON_TYPE );
|
||||
WebClient.client( service ).type( MediaType.APPLICATION_JSON_TYPE );
|
||||
|
||||
return service;
|
||||
}
|
||||
|
||||
|
||||
protected LdapGroupMappingService getLdapGroupMappingService( String authzHeader )
|
||||
{
|
||||
LdapGroupMappingService service =
|
||||
JAXRSClientFactory.create( "http://localhost:" + getServerPort() + "/" + getRestServicesPath() + "/redbackServices/",
|
||||
LdapGroupMappingService.class,
|
||||
Collections.singletonList( getJsonProvider() ) );
|
||||
|
||||
// for debuging purpose
|
||||
WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( getTimeout() );
|
||||
|
||||
if ( authzHeader != null )
|
||||
{
|
||||
WebClient.client( service ).header( "Authorization", authzHeader );
|
||||
}
|
||||
WebClient.client(service).header("Referer","http://localhost:"+getServerPort());
|
||||
|
||||
WebClient.client( service ).accept( MediaType.APPLICATION_JSON_TYPE );
|
||||
WebClient.client( service ).type( MediaType.APPLICATION_JSON_TYPE );
|
||||
|
||||
return service;
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva;
|
||||
package org.apache.archiva.web;
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
|
@ -8,8 +8,7 @@ package org.apache.archiva;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
@ -20,7 +19,6 @@ package org.apache.archiva;
|
|||
|
||||
import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
|
||||
import org.apache.archiva.redback.rest.services.AbstractRestServicesTest;
|
||||
import org.apache.archiva.remotedownload.DownloadArtifactsTest;
|
||||
import org.apache.archiva.test.utils.ArchivaBlockJUnit4ClassRunner;
|
||||
import org.apache.archiva.web.api.RuntimeInfoService;
|
||||
import org.apache.archiva.web.model.ApplicationRuntimeInfo;
|
||||
|
@ -37,7 +35,6 @@ import org.junit.runner.RunWith;
|
|||
import java.io.IOException;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.Collections;
|
||||
|
||||
/**
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva;
|
||||
package org.apache.archiva.web;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
|
@ -9,8 +9,7 @@ package org.apache.archiva;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.security;
|
||||
package org.apache.archiva.web.mock.security;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
|
@ -9,8 +9,7 @@ package org.apache.archiva.security;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
@ -20,6 +19,10 @@ package org.apache.archiva.security;
|
|||
*/
|
||||
|
||||
import org.apache.archiva.admin.model.beans.ManagedRepository;
|
||||
import org.apache.archiva.security.AccessDeniedException;
|
||||
import org.apache.archiva.security.ArchivaSecurityException;
|
||||
import org.apache.archiva.security.PrincipalNotFoundException;
|
||||
import org.apache.archiva.security.UserRepositories;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.remotedownload;
|
||||
package org.apache.archiva.web.remotedownload;
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
|
@ -8,8 +8,7 @@ package org.apache.archiva.remotedownload;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.remotedownload;
|
||||
package org.apache.archiva.web.remotedownload;
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
|
@ -8,8 +8,7 @@ package org.apache.archiva.remotedownload;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.remotedownload;
|
||||
package org.apache.archiva.web.remotedownload;
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
|
@ -8,8 +8,7 @@ package org.apache.archiva.remotedownload;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.remotedownload;
|
||||
package org.apache.archiva.web.remotedownload;
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
|
@ -8,8 +8,7 @@ package org.apache.archiva.remotedownload;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.remotedownload;
|
||||
package org.apache.archiva.web.remotedownload;
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
|
@ -8,8 +8,7 @@ package org.apache.archiva.remotedownload;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.remotedownload;
|
||||
package org.apache.archiva.web.remotedownload;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
|
@ -9,8 +9,7 @@ package org.apache.archiva.remotedownload;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.remotedownload;
|
||||
package org.apache.archiva.web.remotedownload;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
|
@ -9,8 +9,7 @@ package org.apache.archiva.remotedownload;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.upload;
|
||||
package org.apache.archiva.web.upload;
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
|
@ -8,8 +8,7 @@ package org.apache.archiva.upload;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
@ -20,10 +19,9 @@ package org.apache.archiva.upload;
|
|||
|
||||
import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
|
||||
import org.apache.archiva.configuration.ArchivaConfiguration;
|
||||
import org.apache.archiva.redback.rest.services.AbstractRestServicesTest;
|
||||
import org.apache.archiva.redback.rest.services.FakeCreateAdminService;
|
||||
import org.apache.archiva.rest.api.services.ArchivaRestServiceException;
|
||||
import org.apache.archiva.test.utils.ArchivaBlockJUnit4ClassRunner;
|
||||
import org.apache.archiva.web.AbstractRestServicesTest;
|
||||
import org.apache.archiva.web.api.FileUploadService;
|
||||
import org.apache.archiva.web.model.FileMetadata;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
@ -54,7 +52,8 @@ import java.util.concurrent.atomic.AtomicReference;
|
|||
*/
|
||||
@RunWith(ArchivaBlockJUnit4ClassRunner.class)
|
||||
public class UploadArtifactsTest
|
||||
extends AbstractRestServicesTest {
|
||||
extends AbstractRestServicesTest
|
||||
{
|
||||
|
||||
private static String PREVIOUS_ARCHIVA_PATH;
|
||||
private AtomicReference<Path> projectDir = new AtomicReference<>( );
|
||||
|
@ -64,8 +63,17 @@ public class UploadArtifactsTest
|
|||
throws Exception
|
||||
{
|
||||
PREVIOUS_ARCHIVA_PATH = System.getProperty(ArchivaConfiguration.USER_CONFIG_PROPERTY);
|
||||
System.setProperty( ArchivaConfiguration.USER_CONFIG_PROPERTY,
|
||||
if (System.getProperties().containsKey( "test.resources.path" ))
|
||||
{
|
||||
System.setProperty( ArchivaConfiguration.USER_CONFIG_PROPERTY,
|
||||
System.getProperty( "test.resources.path" ) + "/archiva.xml" );
|
||||
} else {
|
||||
Path path = Paths.get( "src/test/resources/archiva.xml" ).toAbsolutePath();
|
||||
System.setProperty( ArchivaConfiguration.USER_CONFIG_PROPERTY,
|
||||
path.toString() );
|
||||
|
||||
}
|
||||
System.err.println( "USER_CONFIG_DIR " + System.getProperty( ArchivaConfiguration.USER_CONFIG_PROPERTY ) );
|
||||
}
|
||||
|
||||
|
||||
|
@ -91,6 +99,7 @@ public class UploadArtifactsTest
|
|||
}
|
||||
projectDir.compareAndSet(null, newVal);
|
||||
}
|
||||
System.err.println( "project dir: " + projectDir.get( ).toString( ) );
|
||||
return projectDir.get();
|
||||
}
|
||||
|
||||
|
@ -196,7 +205,7 @@ public class UploadArtifactsTest
|
|||
try {
|
||||
FileUploadService service = getUploadService();
|
||||
Path file = getProjectDirectory().resolve("src/test/repositories/snapshot-repo/org/apache/archiva/archiva-model/1.4-M4-SNAPSHOT/archiva-model-1.4-M4-20130425.081822-1.jar");
|
||||
Path targetDir = Paths.get("target/testDelete").toAbsolutePath();
|
||||
Path targetDir = getProjectDirectory().resolve("target/testDelete").toAbsolutePath();
|
||||
if (!Files.exists(targetDir)) Files.createDirectories(targetDir);
|
||||
Path tempDir = SystemUtils.getJavaIoTmpDir().toPath();
|
||||
testFile = Files.createTempFile(targetDir, "TestFile", ".txt");
|
||||
|
@ -224,7 +233,7 @@ public class UploadArtifactsTest
|
|||
|
||||
@Test
|
||||
public void failSaveFileWithBadParams() throws IOException, ArchivaRestServiceException {
|
||||
Path path = Paths.get("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.jar");
|
||||
Path path = getProjectDirectory().resolve("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.jar");
|
||||
Files.deleteIfExists(path);
|
||||
FileUploadService service = getUploadService();
|
||||
Path file = getProjectDirectory().resolve("src/test/repositories/snapshot-repo/org/apache/archiva/archiva-model/1.4-M4-SNAPSHOT/archiva-model-1.4-M4-20130425.081822-1.jar");
|
||||
|
@ -244,17 +253,17 @@ public class UploadArtifactsTest
|
|||
} catch (ClientErrorException e) {
|
||||
assertEquals(422, e.getResponse().getStatus());
|
||||
}
|
||||
assertFalse(Files.exists(Paths.get("target/test-testSave.4")));
|
||||
assertFalse(Files.exists(getProjectDirectory().resolve("target/test-testSave.4")));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void saveFile() throws IOException, ArchivaRestServiceException {
|
||||
log.debug("Starting saveFile()");
|
||||
|
||||
Path path = Paths.get("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.jar");
|
||||
Path path = getProjectDirectory().resolve("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.jar");
|
||||
log.debug("Jar exists: {}",Files.exists(path));
|
||||
Files.deleteIfExists(path);
|
||||
path = Paths.get("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.pom");
|
||||
path = getProjectDirectory().resolve("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.pom");
|
||||
Files.deleteIfExists(path);
|
||||
FileUploadService service = getUploadService();
|
||||
service.clearUploadedFiles();
|
||||
|
@ -270,10 +279,10 @@ public class UploadArtifactsTest
|
|||
public void saveFileWithOtherExtension() throws IOException, ArchivaRestServiceException {
|
||||
log.debug("Starting saveFileWithOtherExtension()");
|
||||
|
||||
Path path = Paths.get("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.bin");
|
||||
Path path = getProjectDirectory().resolve("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.bin");
|
||||
log.debug("Jar exists: {}",Files.exists(path));
|
||||
Files.deleteIfExists(path);
|
||||
Path pomPath = Paths.get("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.pom");
|
||||
Path pomPath = getProjectDirectory().resolve("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.pom");
|
||||
Files.deleteIfExists(pomPath);
|
||||
FileUploadService service = getUploadService();
|
||||
service.clearUploadedFiles();
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.webtest.memory;
|
||||
package org.apache.archiva.web.webtest.memory;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
|
@ -9,8 +9,7 @@ package org.apache.archiva.webtest.memory;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.webtest.memory;
|
||||
package org.apache.archiva.web.webtest.memory;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
|
@ -9,8 +9,7 @@ package org.apache.archiva.webtest.memory;
|
|||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.archiva.webtest.memory;
|
||||
package org.apache.archiva.web.webtest.memory;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
|
@ -10,7 +10,6 @@ package org.apache.archiva.webtest.memory;
|
|||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
@ -29,7 +29,8 @@
|
|||
|
||||
<logger name="org.springframework" level="error"/>
|
||||
<logger name="org.apache.archiva" level="error"/>
|
||||
<logger name="org.apache.archiva.web" level="info"/>
|
||||
<logger name="org.apache.archiva.web" level="debug"/>
|
||||
<logger name="org.apache.archiva.repository" level="debug"/>
|
||||
<logger name="org.apache.commons.configuration" level="error"/>
|
||||
<logger name="org.apache.archiva.scheduler.indexing" level="info"/>
|
||||
<logger name="org.apache.archiva.remotedownload" level="info"/>
|
||||
|
|
|
@ -50,11 +50,11 @@
|
|||
</property>
|
||||
</bean>
|
||||
|
||||
<bean name="repositorySessionFactory" class="org.apache.archiva.webtest.memory.TestRepositorySessionFactory"/>
|
||||
<bean name="repositorySessionFactory" class="org.apache.archiva.web.webtest.memory.TestRepositorySessionFactory"/>
|
||||
|
||||
<alias name="userManager#configurable" alias="userManager#default"/>
|
||||
|
||||
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.TestRepositorySessionFactoryBean">
|
||||
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.web.TestRepositorySessionFactoryBean">
|
||||
<constructor-arg>
|
||||
<value>jcr</value>
|
||||
</constructor-arg>
|
||||
|
|
|
@ -51,12 +51,12 @@
|
|||
</property>
|
||||
</bean>
|
||||
|
||||
<bean name="repositorySessionFactory" class="org.apache.archiva.webtest.memory.TestRepositorySessionFactory"/>
|
||||
<bean name="repositorySessionFactory" class="org.apache.archiva.web.webtest.memory.TestRepositorySessionFactory"/>
|
||||
<alias name="userConfiguration#archiva" alias="userConfiguration#default"/>
|
||||
<alias name="authorizer#rbac" alias="authorizer#default"/>
|
||||
<alias name="userManager#configurable" alias="userManager#default"/>
|
||||
|
||||
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.TestRepositorySessionFactoryBean">
|
||||
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.web.TestRepositorySessionFactoryBean">
|
||||
<constructor-arg>
|
||||
<value>jcr</value>
|
||||
</constructor-arg>
|
||||
|
|
|
@ -30,11 +30,11 @@
|
|||
<context:property-placeholder system-properties-mode="OVERRIDE"/>
|
||||
|
||||
<context:annotation-config/>
|
||||
<context:component-scan base-package="org.apache.archiva.webtest.memory"/>
|
||||
<context:component-scan base-package="org.apache.archiva.web.webtest.memory"/>
|
||||
|
||||
<alias name="repositorySessionFactory#test" alias="repositorySessionFactory"/>
|
||||
|
||||
<bean name="userRepositories#test" class="org.apache.archiva.security.UserRepositoriesStub"/>
|
||||
<bean name="userRepositories#test" class="org.apache.archiva.web.mock.security.UserRepositoriesStub"/>
|
||||
|
||||
<alias name="userRepositories#test" alias="userRepositories"/>
|
||||
|
||||
|
@ -49,7 +49,7 @@
|
|||
|
||||
<alias name="archivaConfiguration#default" alias="archivaConfiguration"/>
|
||||
|
||||
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.TestRepositorySessionFactoryBean">
|
||||
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.web.TestRepositorySessionFactoryBean">
|
||||
<constructor-arg>
|
||||
<value>jcr</value>
|
||||
</constructor-arg>
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
|
||||
<context:annotation-config/>
|
||||
<context:component-scan
|
||||
base-package="org.apache.archiva.repository.content.maven2,org.apache.archiva.redback.keys,org.apache.archiva.rest.services.utils"/>
|
||||
base-package="org.apache.archiva.maven.repository.content,org.apache.archiva.redback.keys,org.apache.archiva.rest.services.utils"/>
|
||||
|
||||
<bean name="scheduler" class="org.apache.archiva.components.scheduler.DefaultScheduler">
|
||||
<property name="properties">
|
||||
|
@ -68,7 +68,7 @@
|
|||
</bean>
|
||||
|
||||
|
||||
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.TestRepositorySessionFactoryBean">
|
||||
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.web.TestRepositorySessionFactoryBean">
|
||||
<constructor-arg>
|
||||
<value>jcr</value>
|
||||
</constructor-arg>
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
|
||||
<alias name="repositorySessionFactory#jcr" alias="repositorySessionFactory"/>
|
||||
|
||||
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.TestRepositorySessionFactoryBean">
|
||||
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.web.TestRepositorySessionFactoryBean">
|
||||
<constructor-arg>
|
||||
<value>jcr</value>
|
||||
</constructor-arg>
|
||||
|
|
Loading…
Reference in New Issue