Skip to content

Commit

Permalink
Convert ResourceRequestEnvironment to interface
Browse files Browse the repository at this point in the history
  • Loading branch information
seanf committed Aug 24, 2017
1 parent ae1e8fb commit e3a3216
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 51 deletions.
44 changes: 12 additions & 32 deletions server/zanata-model-test/src/main/java/org/zanata/RestTest.java
Expand Up @@ -26,6 +26,7 @@
import java.util.Set;

import javax.annotation.CheckForNull;
import javax.annotation.Nonnull;
import javax.enterprise.inject.spi.CDI;
import javax.naming.InitialContext;
import javax.naming.NamingException;
Expand Down Expand Up @@ -55,6 +56,8 @@
import org.zanata.provider.DBUnitProvider;
import org.zanata.rest.ResourceRequestEnvironment;

import com.google.common.collect.ImmutableMap;

import static javax.ws.rs.core.Response.Status.Family.SUCCESSFUL;

/**
Expand Down Expand Up @@ -84,18 +87,9 @@ public abstract class RestTest {

// Authorized environment with valid credentials
private static final ResourceRequestEnvironment ENV_AUTHORIZED =
new ResourceRequestEnvironment() {
@Override
public Map<String, Object> getDefaultHeaders() {
return new HashMap<String, Object>() {
private static final long serialVersionUID = 1L;
{
put("X-Auth-User", ADMIN);
put("X-Auth-Token", ADMIN_KEY);
}
};
}
};
() -> ImmutableMap.of(
"X-Auth-User", ADMIN,
"X-Auth-Token", ADMIN_KEY);

private DBUnitProvider dbUnitProvider = new DBUnitProvider() {
@Override
Expand Down Expand Up @@ -252,35 +246,21 @@ public final String getRestEndpointUrl() {
* @return A Resource Request execution environment with valid test
* credentials.
*/
public static final ResourceRequestEnvironment getAuthorizedEnvironment() {
public static ResourceRequestEnvironment getAuthorizedEnvironment() {
return ENV_AUTHORIZED;
}

/**
* Gets an empty header for REST request.
*/
public static final ResourceRequestEnvironment getEmptyHeaderEnvironment() {
return new ResourceRequestEnvironment() {
@Override
public Map<String, Object> getDefaultHeaders() {
return new HashMap<String, Object>();
}
};
public static ResourceRequestEnvironment getEmptyHeaderEnvironment() {
return ResourceRequestEnvironment.EMPTY;
}

public static ResourceRequestEnvironment getTranslatorHeaders() {
return new ResourceRequestEnvironment() {
@Override
public Map<String, Object> getDefaultHeaders() {
return new HashMap<String, Object>() {
private static final long serialVersionUID = 1L;
{
put("X-Auth-User", TRANSLATOR);
put("X-Auth-Token", TRANSLATOR_KEY);
}
};
}
};
return () -> ImmutableMap.of(
"X-Auth-User", TRANSLATOR,
"X-Auth-Token", TRANSLATOR_KEY);
}

protected ResteasyWebTarget addExtensionToRequest(Set<String> extensions,
Expand Down
Expand Up @@ -37,7 +37,7 @@
*/
public abstract class ResourceRequest {
private static final ResourceRequestEnvironment DEFAULT_ENV =
new ResourceRequestEnvironment();
ResourceRequestEnvironment.EMPTY;

private String resourceUrl;
private String method;
Expand Down
Expand Up @@ -20,10 +20,12 @@
*/
package org.zanata.rest;

import java.util.HashMap;
import java.util.Collections;
import java.util.Map;
import javax.annotation.Nonnull;

import com.google.common.collect.ImmutableMap;

/**
* The environment that a <code>ResourceRequest</code> should be executed with.
* Provides default headers, etc to be included in the request.
Expand All @@ -33,15 +35,15 @@
*
* @see ResourceRequest
*/
public class ResourceRequestEnvironment {
@FunctionalInterface
public interface ResourceRequestEnvironment {

ResourceRequestEnvironment EMPTY = Collections::emptyMap;

/**
* Returns the default headers to be used in a request. Override to change
* the default headers.
*/
@Nonnull
public Map<String, Object> getDefaultHeaders() {
Map<String, Object> map = new HashMap<>();
return map;
}
Map<String, Object> getDefaultHeaders();
}
Expand Up @@ -28,6 +28,7 @@
import static org.zanata.provider.DBUnitProvider.DataSetOperation;
import static org.zanata.util.RawRestTestUtils.jaxbMarhsal;

import javax.annotation.Nonnull;
import javax.ws.rs.client.Entity;
import javax.ws.rs.client.Invocation;
import javax.ws.rs.core.HttpHeaders;
Expand All @@ -45,6 +46,7 @@
import org.zanata.rest.ResourceRequest;
import org.zanata.rest.ResourceRequestEnvironment;
import org.zanata.rest.dto.Project;
import com.google.common.collect.ImmutableMap;

public class AnonymousUserRawRestITCase extends RestTest {

Expand Down Expand Up @@ -221,17 +223,8 @@ protected void onResponse(Response response) {
}

private ResourceRequestEnvironment getUnAuthorizedEnvironment() {
return new ResourceRequestEnvironment() {
@Override
public Map<String, Object> getDefaultHeaders() {
return new HashMap<String, Object>() {
private static final long serialVersionUID = 1L;
{
put("X-Auth-User", ADMIN);
put("X-Auth-Token", invalidAPI);
}
};
}
};
return () -> ImmutableMap.of(
"X-Auth-User", ADMIN,
"X-Auth-Token", invalidAPI);
}
}

0 comments on commit e3a3216

Please sign in to comment.