Project

General

Profile

« Previous | Next » 

Revision 10044

Added by Jing Tao over 7 years ago

Add code to testArchive, testSetAccessPolicy, testSetOwner and testSetReplicationPolicy on objects whose authoritative member node is v1 or v2 MNRead.

View differences:

MockCNode.java
37 37
import org.dataone.service.types.v1.Identifier;
38 38
import org.dataone.service.types.v1.NodeReference;
39 39
import org.dataone.service.types.v1.NodeType;
40
import org.dataone.service.types.v1.Service;
41
import org.dataone.service.types.v1.Services;
40 42
import org.dataone.service.types.v1.Session;
41 43
import org.dataone.service.types.v1.Subject;
42 44
import org.dataone.service.types.v1.SubjectInfo;
......
51 53
 * when there is a dependency on CN services
52 54
 */
53 55
public class MockCNode extends MultipartCNode {
56
    
57
    public final static String V1MNNODEID= "urn:node:test_MN-v1";
58
    public final static String V2MNNODEID= "urn:node:test_MN-v2";
54 59

  
55 60
    /**
56 61
     * See superclass for documentation
......
65 70
		NodeList list = new NodeList();
66 71
		list.addNode(getCapabilities());
67 72
		list.addNode(getTestMN());
73
		list.addNode(getTestV1MN());
74
		list.addNode(getTestV2MN());
68 75
		return list;
69 76
	}
70 77
    
......
136 143
        return null;
137 144
    }
138 145
    
146
    @Override
147
    public Node getNodeCapabilities(NodeReference nodeId) throws NotImplemented, ServiceFailure {
148
        if(nodeId != null && nodeId.getValue().equals(V1MNNODEID)) {
149
            return getTestV1MN();
150
        } else if (nodeId != null && nodeId.getValue().equals(V2MNNODEID)) {
151
            return getTestV2MN();
152
        } else {
153
            return getCapabilities();
154
        }
155
    }
156
    
139 157
    /*
140 158
     * Create a test mn in this env.
141 159
     */
......
151 169
        return node;
152 170
    }
153 171
    
172
    
173
    /*
174
     * Create a v1 mn in this env
175
     */
176
    private Node getTestV1MN() {
177
        Node node = new Node();
178
        NodeReference nodeRef = new NodeReference();
179
        nodeRef.setValue(V1MNNODEID);
180
        node.setIdentifier(nodeRef);
181
        Subject subject = new Subject();
182
        subject.setValue("cn=" + V1MNNODEID + ",dc=dataone,dc=org");
183
        node.addSubject(subject );
184
        node.setType(NodeType.MN);
185
        Service service = new Service();
186
        service.setName("MNRead");
187
        service.setVersion("V1");
188
        service.setAvailable(true);
189
        Services services = new Services();
190
        services.addService(service);
191
        node.setServices(services);
192
        return node;
193
    }
194
    
195
    /*
196
     * Create a v2 mn in this env
197
     */
198
    private Node getTestV2MN() {
199
        Node node = new Node();
200
        NodeReference nodeRef = new NodeReference();
201
        nodeRef.setValue(V2MNNODEID);
202
        node.setIdentifier(nodeRef);
203
        Subject subject = new Subject();
204
        subject.setValue("cn=" + V2MNNODEID + ",dc=dataone,dc=org");
205
        node.addSubject(subject);
206
        node.setType(NodeType.MN);
207
        Service service = new Service();
208
        service.setName("MNRead");
209
        service.setVersion("V1");
210
        service.setAvailable(true);
211
        Service service2 = new Service();
212
        service2.setName("MNRead");
213
        service2.setVersion("V2");
214
        service2.setAvailable(true);
215
        Services services = new Services();
216
        services.addService(service);
217
        services.addService(service2);
218
        node.setServices(services);
219
        return node;
220
    }
154 221
}

Also available in: Unified diff