git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/Common/authorization-common-library@131172 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
8e7583391a
commit
39089fb2ae
|
@ -0,0 +1,42 @@
|
|||
package org.gcube.common.authorization.library;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
|
||||
|
||||
import org.gcube.common.authorization.library.utils.MapAdapter;
|
||||
|
||||
|
||||
|
||||
@XmlRootElement
|
||||
@XmlAccessorType(XmlAccessType.FIELD)
|
||||
public class QualifiersList {
|
||||
|
||||
|
||||
@XmlJavaTypeAdapter(MapAdapter.class)
|
||||
Map<String, String> qualifierTokenMap= new HashMap<String, String>();
|
||||
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private QualifiersList(){}
|
||||
|
||||
public QualifiersList(Map<String, String> qualifierTokenMap) {
|
||||
this.qualifierTokenMap = qualifierTokenMap;
|
||||
}
|
||||
|
||||
public Map<String, String> getQualifiers() {
|
||||
return qualifierTokenMap;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "QualifiersList [qualifierTokenMap=" + qualifierTokenMap + "]";
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
package org.gcube.common.authorization.library.utils;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.xml.bind.annotation.adapters.XmlAdapter;
|
||||
|
||||
|
||||
public class MapAdapter extends XmlAdapter<MapElements[], Map<String, String>> {
|
||||
|
||||
public MapElements[] marshal(Map<String, String> arg0) throws Exception {
|
||||
MapElements[] mapElements = new MapElements[arg0.size()];
|
||||
int i = 0;
|
||||
for (Map.Entry<String, String> entry : arg0.entrySet())
|
||||
mapElements[i++] = new MapElements(entry.getKey(), entry.getValue());
|
||||
|
||||
return mapElements;
|
||||
}
|
||||
|
||||
public Map<String, String> unmarshal(MapElements[] arg0) throws Exception {
|
||||
Map<String, String> r = new HashMap<String, String>();
|
||||
for (MapElements mapelement : arg0)
|
||||
r.put(mapelement.key, mapelement.value);
|
||||
return r;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
package org.gcube.common.authorization.library.utils;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
|
||||
class MapElements
|
||||
{
|
||||
@XmlElement public String key;
|
||||
@XmlElement public String value;
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private MapElements() {} //Required by JAXB
|
||||
|
||||
public MapElements(String key, String value)
|
||||
{
|
||||
this.key = key;
|
||||
this.value = value;
|
||||
}
|
||||
}
|
|
@ -3,6 +3,7 @@ package org.gcube.common.authorization.library.binder;
|
|||
import java.io.StringReader;
|
||||
import java.io.StringWriter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
|
@ -10,6 +11,7 @@ import javax.xml.bind.JAXBContext;
|
|||
import javax.xml.bind.JAXBException;
|
||||
|
||||
import org.gcube.common.authorization.library.AuthorizationEntry;
|
||||
import org.gcube.common.authorization.library.QualifiersList;
|
||||
import org.gcube.common.authorization.library.policies.Policy;
|
||||
import org.gcube.common.authorization.library.provider.UserInfo;
|
||||
import org.junit.Assert;
|
||||
|
@ -18,7 +20,7 @@ import org.junit.Test;
|
|||
public class AuthorizationEntryBinder {
|
||||
|
||||
public static JAXBContext getContext() throws JAXBException{
|
||||
return JAXBContext.newInstance(AuthorizationEntry.class);
|
||||
return JAXBContext.newInstance(QualifiersList.class, AuthorizationEntry.class);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -34,5 +36,14 @@ public class AuthorizationEntryBinder {
|
|||
AuthorizationEntry ae2 = (AuthorizationEntry)context.createUnmarshaller().unmarshal(new StringReader(sw.toString()));
|
||||
System.out.println(ae2.toString());
|
||||
Assert.assertEquals(ae1, ae2);
|
||||
|
||||
QualifiersList entries = new QualifiersList(Collections.singletonMap("qualifier", "token"));
|
||||
System.out.println(entries);
|
||||
sw = new StringWriter();
|
||||
context.createMarshaller().marshal(entries, sw);
|
||||
System.out.println(sw);
|
||||
|
||||
QualifiersList entries2 = (QualifiersList)context.createUnmarshaller().unmarshal(new StringReader(sw.toString()));
|
||||
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue