|
@@ -114,6 +114,10 @@ public class FirmwareAutoDumper
|
|
|
|
|
|
File outfolder_tmp = new File(outfolder, "tmp");
|
|
|
|
|
|
+ File outfolder_archivarius = new File(outfolder, "archivarius");
|
|
|
+ outfolder_archivarius.mkdirs();
|
|
|
+
|
|
|
+ File archiveorgCSV = new File(outfolder_archivarius,"upload.csv");
|
|
|
|
|
|
for(String[] index:indexes)
|
|
|
{
|
|
@@ -192,6 +196,7 @@ public class FirmwareAutoDumper
|
|
|
if (!DUMMY_MODE) {
|
|
|
new File(outfolder_tmp, "Firmware").delete();
|
|
|
pushToMatrix();
|
|
|
+
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -201,6 +206,7 @@ public class FirmwareAutoDumper
|
|
|
{
|
|
|
dummydownloadfake.close();
|
|
|
}
|
|
|
+ generateIACSV(archiveorgCSV,outfolder);
|
|
|
y.dump(state,new FileWriter(statefile));
|
|
|
}
|
|
|
catch (IOException ex)
|
|
@@ -209,6 +215,46 @@ public class FirmwareAutoDumper
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private static void generateIACSV(File destination, File outbase)
|
|
|
+ {
|
|
|
+ HashSet<String> csvlines = new HashSet<>();
|
|
|
+ state.getFirmwares().forEach((k,v)->
|
|
|
+ {
|
|
|
+
|
|
|
+ String[] keysplitted = k.split("-");
|
|
|
+
|
|
|
+ String key_delanguaged = keysplitted[0];
|
|
|
+ if(keysplitted.length>=2)
|
|
|
+ {
|
|
|
+ for(int i=1;i<keysplitted.length-1;i++)
|
|
|
+ {
|
|
|
+ key_delanguaged = key_delanguaged+"-"+keysplitted[i];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ final String itemname = "sena_firmware_files_"+key_delanguaged;
|
|
|
+ v.getVersions().forEach((k2,v2)->
|
|
|
+ {
|
|
|
+ if((!v2.isIAUploaded()&&(!v2.isFiller())))
|
|
|
+ {
|
|
|
+ v2.setIAUploaded(true);
|
|
|
+ String filename = new File(outbase,v2.getFilename()).getAbsoluteFile().toString();
|
|
|
+ csvlines.add(itemname+","+filename+",firmware,open_source_software,software");
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+ try (FileOutputStream w = new FileOutputStream(destination);PrintStream p = new PrintStream(w);)
|
|
|
+ {
|
|
|
+ p.println("identifier,file,subject,collection,mediatype");
|
|
|
+ String[] lines = csvlines.toArray(new String[csvlines.size()]);
|
|
|
+ for(String line :lines)
|
|
|
+ {
|
|
|
+ p.println(line);
|
|
|
+ }
|
|
|
+ } catch (IOException e) {
|
|
|
+ l.warn("IO Error on generateIACSV");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
private static void pushToMatrix()
|
|
|
{
|
|
|
if(!EntryPoint.c.isMatrixEnabled())
|