1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
|
package org.openecomp.mso.global_tests.asdc.notif_emulator;
import java.io.IOException;
import java.io.InputStream;
import java.util.LinkedList;
import java.util.List;
import org.apache.commons.io.IOUtils;
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.type.TypeReference;
import org.openecomp.sdc.api.IDistributionClient;
import org.openecomp.sdc.api.consumer.IConfiguration;
import org.openecomp.sdc.api.consumer.IDistributionStatusMessage;
import org.openecomp.sdc.api.consumer.INotificationCallback;
import org.openecomp.sdc.api.notification.IArtifactInfo;
import org.openecomp.sdc.api.notification.IVfModuleMetadata;
import org.openecomp.mso.asdc.installer.IVfModuleData;
import org.openecomp.mso.asdc.installer.VfModuleMetaData;
import org.openecomp.mso.asdc.client.ASDCConfiguration;
import org.openecomp.sdc.api.results.IDistributionClientDownloadResult;
import org.openecomp.sdc.api.results.IDistributionClientResult;
import org.openecomp.sdc.impl.DistributionClientDownloadResultImpl;
import org.openecomp.sdc.impl.DistributionClientResultImpl;
import org.openecomp.sdc.utils.DistributionActionResultEnum;
public class DistributionClientEmulator implements IDistributionClient {
private String resourcePath;
private List<IVfModuleData> listVFModuleMetaData;
private List<IDistributionStatusMessage> distributionMessageReceived = new LinkedList<>();
public DistributionClientEmulator(String notifFolderInResource) {
resourcePath = notifFolderInResource;
}
public List<IDistributionStatusMessage> getDistributionMessageReceived() {
return distributionMessageReceived;
}
@Deprecated
public List<IVfModuleMetadata> decodeVfModuleArtifact(byte[] arg0) {
return null;
}
public List<IVfModuleData> getListVFModuleMetaData() {
return listVFModuleMetaData;
}
@Override
public IDistributionClientDownloadResult download (IArtifactInfo arg0) {
//String filename = resourcePath+"/artifacts/"+arg0.getArtifactURL();
String filename = arg0.getArtifactURL();
System.out.println("Emulating the download from resources files:"+filename);
InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream(resourcePath+"/artifacts/"+filename);
if (inputStream == null) {
System.out.println("InputStream is NULL for:"+filename);
}
try {
byte[] bytes = IOUtils.toByteArray(inputStream);
if (arg0.getArtifactType().equals(ASDCConfiguration.VF_MODULES_METADATA)) {
listVFModuleMetaData = new ObjectMapper().readValue(bytes, new TypeReference<List<VfModuleMetaData>>() {
});
}
return new DistributionClientDownloadResultImpl(DistributionActionResultEnum.SUCCESS, DistributionActionResultEnum.SUCCESS.name(),arg0.getArtifactName(),bytes);
} catch (IOException e) {
return null;
}
}
@Override
public IConfiguration getConfiguration() {
return null;
}
@Override
public IDistributionClientResult init(IConfiguration arg0, INotificationCallback arg1) {
return new DistributionClientResultImpl(DistributionActionResultEnum.SUCCESS,DistributionActionResultEnum.SUCCESS.name());
}
@Override
public IDistributionClientResult sendDeploymentStatus(IDistributionStatusMessage arg0) {
this.distributionMessageReceived.add(arg0);
return new DistributionClientResultImpl(DistributionActionResultEnum.SUCCESS,DistributionActionResultEnum.SUCCESS.name());
}
@Override
public IDistributionClientResult sendDeploymentStatus(IDistributionStatusMessage arg0, String arg1) {
this.distributionMessageReceived.add(arg0);
return new DistributionClientResultImpl(DistributionActionResultEnum.SUCCESS,DistributionActionResultEnum.SUCCESS.name());
}
@Override
public IDistributionClientResult sendDownloadStatus(IDistributionStatusMessage arg0) {
this.distributionMessageReceived.add(arg0);
return new DistributionClientResultImpl(DistributionActionResultEnum.SUCCESS,DistributionActionResultEnum.SUCCESS.name());
}
@Override
public IDistributionClientResult sendDownloadStatus(IDistributionStatusMessage arg0, String arg1) {
this.distributionMessageReceived.add(arg0);
return new DistributionClientResultImpl(DistributionActionResultEnum.SUCCESS,DistributionActionResultEnum.SUCCESS.name());
}
@Override
public IDistributionClientResult start() {
return new DistributionClientResultImpl(DistributionActionResultEnum.SUCCESS,DistributionActionResultEnum.SUCCESS.name());
}
@Override
public IDistributionClientResult stop() {
return new DistributionClientResultImpl(DistributionActionResultEnum.SUCCESS,DistributionActionResultEnum.SUCCESS.name());
}
@Override
public IDistributionClientResult updateConfiguration(IConfiguration arg0) {
return new DistributionClientResultImpl(DistributionActionResultEnum.SUCCESS,DistributionActionResultEnum.SUCCESS.name());
}
}
|