diff --git a/src/integration-test/java/com/researchspace/dataverse/http/DataverseOperationsTest.java b/src/integration-test/java/com/researchspace/dataverse/http/DataverseOperationsTest.java index 64e7e52..e67ece8 100644 --- a/src/integration-test/java/com/researchspace/dataverse/http/DataverseOperationsTest.java +++ b/src/integration-test/java/com/researchspace/dataverse/http/DataverseOperationsTest.java @@ -11,6 +11,8 @@ import org.junit.Test; import java.util.Arrays; +import java.util.List; +import java.util.Map; import static org.junit.Assert.*; /**
@@ -93,4 +95,12 @@ public void testGetDataverseById() {
 		assertNotNull(dv.getId());
 		assertTrue(dv.getContactEmails().size() > 0);
 	}
+
+	@Test
+	public void testGetDatasetMetadataLanguage() {
+		// only works if dataverseAlias belongs to a dataverse collection with enlish as its metadatalanguage
+		DataverseResponse>> langMap = dataverseOps
+				.getDataverseMetadataLanguage(dataverseAlias);
+		assertEquals("en", langMap.getData().get(0).get("locale"));
+	}
 }
diff --git a/src/main/java/com/researchspace/dataverse/api/v1/DataverseOperations.java b/src/main/java/com/researchspace/dataverse/api/v1/DataverseOperations.java
index 6c4a31d..fb21d37 100644
--- a/src/main/java/com/researchspace/dataverse/api/v1/DataverseOperations.java
+++ b/src/main/java/com/researchspace/dataverse/api/v1/DataverseOperations.java
@@ -5,6 +5,7 @@
 
 import java.io.IOException;
 import java.util.List;
+import java.util.Map;
 
 import com.researchspace.dataverse.entities.DataversePost;
 import com.researchspace.dataverse.entities.DataverseGet;
@@ -87,4 +88,6 @@ public interface DataverseOperations {
 	 */
 	DataverseResponse publishDataverse(String dataverseAlias);
 
+	DataverseResponse>> getDataverseMetadataLanguage(String alias);
+
 }
diff --git a/src/main/java/com/researchspace/dataverse/http/DataverseOperationsImplV1.java b/src/main/java/com/researchspace/dataverse/http/DataverseOperationsImplV1.java
index 6f0f53f..47a9011 100644
--- a/src/main/java/com/researchspace/dataverse/http/DataverseOperationsImplV1.java
+++ b/src/main/java/com/researchspace/dataverse/http/DataverseOperationsImplV1.java
@@ -33,6 +33,7 @@
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.util.List;
+import java.util.Map;
 
 import static org.apache.commons.lang3.StringUtils.isEmpty;
 import static org.apache.commons.lang3.Validate.isTrue;
@@ -412,5 +413,18 @@ public DataverseResponse setDatasetPublishPopupCustomText(String text) {
 		ResponseEntity> resp = template.exchange(url, HttpMethod.PUT, entity, type);
 		log.debug(resp.getBody().toString());
 		return resp.getBody();
-	}	
+	}
+	
+	@Override
+	public DataverseResponse>> getDataverseMetadataLanguage(String alias) {
+		String url = createV1Url("dataverses", alias, "allowedMetadataLanguages");
+		HttpEntity entity = createHttpEntity("");
+		ParameterizedTypeReference>>> type = new ParameterizedTypeReference>>>() {
+		};
+		ResponseEntity>>> resp = template.exchange(url, HttpMethod.GET,
+				entity, type);
+		log.debug(resp.getBody().toString());
+		return resp.getBody();
+
+	}
 }