import java.nio.file.attribute.BasicFileAttributes;\r
import java.sql.Timestamp;\r
import java.util.ArrayList;\r
+import java.util.HashSet;\r
import java.util.List;\r
+import java.util.Set;\r
\r
import org.jboss.resteasy.client.jaxrs.ResteasyClient;\r
import org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder;\r
import com.ibm.nosql.json.api.DB;\r
import com.ibm.nosql.json.api.DBCollection;\r
import com.ibm.nosql.json.api.DBCursor;\r
+import com.ibm.nosql.json.api.DBObject;\r
import com.ibm.nosql.json.api.QueryBuilder;\r
\r
import user.commons.ListUtils;\r
import user.commons.RemoteFile;\r
import user.commons.StoreUri;\r
import user.commons.nosql.NoSQLUtils;\r
+import user.commons.octopus.IOctopusAPI;\r
+import user.commons.octopus.OctopusAPI;\r
import user.commons.remotestore.RemoteStoreProtocol;\r
import user.jobengine.db.IItemManager;\r
import user.jobengine.db.Item;\r
\r
@BeforeClass\r
static public void setUpConnection() throws TSMException {\r
- // System.setProperty("jobengine.octopus.rundowns.name", "test_rundowns");\r
- // System.setProperty("jobengine.octopus.stories.name", "test_stories");\r
- // System.setProperty("jobengine.octopus.storyfolders.name", "test_storyfolders");\r
- // System.setProperty("jobengine.octopus.rundowns.name", "rundowns180620");\r
- // System.setProperty("jobengine.octopus.stories.name", "stories180620");\r
- // System.setProperty("jobengine.octopus.storyfolders.name", "storyfolders180620");\r
- System.setProperty("jobengine.octopus.rundowns.name", "rundowns181217");\r
- System.setProperty("jobengine.octopus.stories.name", "stories181217");\r
- System.setProperty("jobengine.octopus.storyfolders.name", "storyfolders181217");\r
-\r
- // System.setProperty("jobengine.nosql.db.url", "jdbc:db2://10.11.1.90:50000/mc:retrieveMessagesFromServerOnGetMessage=true;");\r
- // System.setProperty("jobengine.nosql.db.user", "db2admin");\r
- // System.setProperty("jobengine.nosql.db.password", "password");\r
- System.setProperty("nexio.host", "10.10.1.55");\r
- // System.setProperty(ItemManager.DBURL, "jdbc:db2://10.228.212.42:50000/mc:retrieveMessagesFromServerOnGetMessage=true;");\r
- // System.setProperty(ItemManager.DBUSERNAME, "blobtest");\r
- // System.setProperty(ItemManager.DBPASSWORD, "blobtest");\r
+ // System.setProperty("jobengine.octopus.rundowns.name", "test_rundowns");\r
+ // System.setProperty("jobengine.octopus.stories.name", "test_stories");\r
+ // System.setProperty("jobengine.octopus.storyfolders.name",\r
+ // "test_storyfolders");\r
+ // System.setProperty("jobengine.octopus.rundowns.name", "rundowns180620");\r
+ // System.setProperty("jobengine.octopus.stories.name", "stories180620");\r
+ // System.setProperty("jobengine.octopus.storyfolders.name",\r
+ // "storyfolders180620");\r
+// System.setProperty("jobengine.octopus.rundowns.name", "rundowns181217");\r
+// System.setProperty("jobengine.octopus.stories.name", "stories181217");\r
+// System.setProperty("jobengine.octopus.storyfolders.name", "storyfolders181217");\r
+\r
+ // System.setProperty("jobengine.nosql.db.url",\r
+ // "jdbc:db2://10.11.1.90:50000/mc:retrieveMessagesFromServerOnGetMessage=true;");\r
+ // System.setProperty("jobengine.nosql.db.user", "db2admin");\r
+ // System.setProperty("jobengine.nosql.db.password", "password");\r
+// System.setProperty("nexio.host", "10.10.1.55");\r
+ // System.setProperty(ItemManager.DBURL,\r
+ // "jdbc:db2://10.228.212.42:50000/mc:retrieveMessagesFromServerOnGetMessage=true;");\r
+ // System.setProperty(ItemManager.DBUSERNAME, "blobtest");\r
+ // System.setProperty(ItemManager.DBPASSWORD, "blobtest");\r
// System.setProperty(ItemManager.DBURL,\r
\r
manager = new ItemManager();\r
}\r
stream.close();\r
\r
- //check_rd_process(allFiles, allStatus);\r
+ // check_rd_process(allFiles, allStatus);\r
} catch (Exception e) {\r
System.err.println(e.getMessage());\r
}\r
\r
private void check_rd_collect_status(Path mediaFilePath, List<String> allFiles) {\r
File file = mediaFilePath.toFile();\r
- if (file.isDirectory() || (!file.getName().toUpperCase().endsWith(".JSON") && !file.getName().toUpperCase().endsWith(".KILLDATE")))\r
+ if (file.isDirectory() || (!file.getName().toUpperCase().endsWith(".JSON")\r
+ && !file.getName().toUpperCase().endsWith(".KILLDATE")))\r
return;\r
\r
if (file.getName().toUpperCase().endsWith(".KILLDATE")) {\r
@Test\r
public void getJSONFile() throws Exception {\r
Path filePath = Paths.get("//10.11.1.90/root/mediacube/data/ARCHIVE/14-03379-0092-1_.mov");\r
- Path json = Paths.get(Paths.get(filePath.getParent().toString(), ".STATUS", filePath.getFileName().toString()) + ".json");\r
+ Path json = Paths.get(\r
+ Paths.get(filePath.getParent().toString(), ".STATUS", filePath.getFileName().toString()) + ".json");\r
System.out.println(json);\r
}\r
\r
assertNotNull(media);\r
}\r
\r
- // private void check_rd_process(List<String> allFiles, List<String> allStatus) {\r
- // File mediaFile = mediaFilePath.toFile();\r
- // if (mediaFile.isDirectory() || !mediaFile.getName().toUpperCase().endsWith(".MXF"))\r
- // return;\r
- // Path status = Paths.get(mediaFilePath.getParent().toString(), ".STATUS", mediaFile.getName() + ".json");\r
- // if (!status.toFile().exists()) {\r
- // System.out.println("Nincs JSON: " + mediaFile.getAbsolutePath());\r
- // }\r
+ // private void check_rd_process(List<String> allFiles, List<String> allStatus)\r
+ // {\r
+ // File mediaFile = mediaFilePath.toFile();\r
+ // if (mediaFile.isDirectory() ||\r
+ // !mediaFile.getName().toUpperCase().endsWith(".MXF"))\r
+ // return;\r
+ // Path status = Paths.get(mediaFilePath.getParent().toString(), ".STATUS",\r
+ // mediaFile.getName() + ".json");\r
+ // if (!status.toFile().exists()) {\r
+ // System.out.println("Nincs JSON: " + mediaFile.getAbsolutePath());\r
+ // }\r
//\r
- // if (mediaFile.length() == 0) {\r
- // String houseid = mediaFile.getName().substring(0, mediaFile.getName().lastIndexOf("."));\r
- // final String idToCheck = houseid.substring(0, houseid.lastIndexOf("-"));\r
- // MetadataType metadataType = MetadataTypeDetector.GuessMetadataType(idToCheck);\r
- // if (metadataType == MetadataType.OctopusPlaceholder) {\r
- // String query = String.format("select count(*) from mediafile where houseid like '%s%%'", idToCheck);\r
- // IResultSetConsumer consumer = rs -> {\r
- // if (rs.getInt(1) == 0) {\r
+ // if (mediaFile.length() == 0) {\r
+ // String houseid = mediaFile.getName().substring(0,\r
+ // mediaFile.getName().lastIndexOf("."));\r
+ // final String idToCheck = houseid.substring(0, houseid.lastIndexOf("-"));\r
+ // MetadataType metadataType =\r
+ // MetadataTypeDetector.GuessMetadataType(idToCheck);\r
+ // if (metadataType == MetadataType.OctopusPlaceholder) {\r
+ // String query = String.format("select count(*) from mediafile where houseid\r
+ // like '%s%%'", idToCheck);\r
+ // IResultSetConsumer consumer = rs -> {\r
+ // if (rs.getInt(1) == 0) {\r
//\r
- // File f = check_rd_nonzero_fellow(idToCheck, allFiles);\r
- // if (f == null)\r
- // System.out.println("0 még sincs korábbi: " + mediaFile.getAbsolutePath());\r
+ // File f = check_rd_nonzero_fellow(idToCheck, allFiles);\r
+ // if (f == null)\r
+ // System.out.println("0 még sincs korábbi: " + mediaFile.getAbsolutePath());\r
//\r
- // }\r
- // return false;\r
- // };\r
- // manager.executeQuery(query, consumer, null);\r
- // }\r
+ // }\r
+ // return false;\r
+ // };\r
+ // manager.executeQuery(query, consumer, null);\r
+ // }\r
//\r
- // }\r
+ // }\r
//\r
- // }\r
+ // }\r
\r
private void rescue_archive(RescueNEXIOMaterials processor, String clipName, long duration) throws Exception {\r
/*\r
RundownArchive ra = processor.processRundow(clipName, duration);\r
if (ra != null) {\r
System.out.println(ra.getItemTitle());\r
- //processor.copy(ra);\r
+ // processor.copy(ra);\r
} else\r
System.out.println("No rundown for " + clipName);\r
\r
DBCursor cursor = collection.find(queryBuilder.get());\r
int count = 0;\r
RescueNEXIOMaterials processor = new RescueNEXIOMaterials();\r
- processor.set(2098, "administrator", "system", "ftp://10.10.1.100/ARCHIVE/TEST", "mediacube", "Broadca5T", 21, "ARCHIVED", manager);\r
+ processor.set(2098, "administrator", "system", "ftp://10.10.1.100/ARCHIVE/TEST", "mediacube", "Broadca5T", 21,\r
+ "ARCHIVED", manager);\r
\r
List<BasicDBObject> clips = ListUtils.cast(cursor.toArray());\r
for (BasicDBObject clip : clips) {\r
\r
@Test\r
public void test_PlanAirExtensions() throws Exception {\r
- String actual = PlanAirExtensions.getMorpeusXML(manager, "jdbc:sqlserver://10.10.1.45;databaseName=PA_Echo;", "MAM", "Echotv.hu", "M009729A", "ISILON");\r
+ String actual = PlanAirExtensions.getMorpeusXML(manager, "jdbc:sqlserver://10.10.1.45;databaseName=PA_Echo;",\r
+ "MAM", "Echotv.hu", "M009729A", "ISILON");\r
assertNotNull(actual);\r
assertTrue(actual.length() > 0);\r
}\r
\r
@Test\r
public void test_ProjectCleanupMountedLocationStep() throws Exception {\r
- //TODO\r
+ // TODO\r
ProjectCleanupMountedLocationStep sut = new ProjectCleanupMountedLocationStep();\r
sut.execute("c://_video//projects", null, new JobRuntime());\r
}\r
\r
@Test\r
public void test_Solr() throws Exception {\r
- //http://lucene.apache.org/solr/guide/7_5/using-solrj.html#using-solrj\r
+ // http://lucene.apache.org/solr/guide/7_5/using-solrj.html#using-solrj\r
\r
final String solrUrl = "http://localhost:8983/solr";\r
- //return new HttpSolrClient.Builder(solrUrl).withConnectionTimeout(10000).withSocketTimeout(60000).build();\r
+ // return new\r
+ // HttpSolrClient.Builder(solrUrl).withConnectionTimeout(10000).withSocketTimeout(60000).build();\r
\r
ResteasyClient client = new ResteasyClientBuilder().build();\r
ResteasyWebTarget webTarget = client.target("httpp:");\r
Item i = manager.createItem("Generic", "Trigger teszt2", "itemdesc2", "itemhouseid2");\r
Media m = manager.createMedia("Generic", "mediatitle2", "mediadesc2", "mediahouseid2");\r
i.appendMedia(m);\r
- MediaFile mf = manager.createMediaFile("filename2", manager.getFileType("High-res"), manager.getSystemStore(false), m);\r
+ MediaFile mf = manager.createMediaFile("filename2", manager.getFileType("High-res"),\r
+ manager.getSystemStore(false), m);\r
m.appendMediaFile(mf);\r
manager.mergeItemStructure(i);\r
\r
\r
@Test\r
public void testTSM() throws Exception {\r
- //System.setProperty("PATH", "c:\\_workspace\\USER\\MediaCube\\server\\user.tsm.client\\apilib\\;%PATH%");\r
+ // System.setProperty("PATH",\r
+ // "c:\\_workspace\\USER\\MediaCube\\server\\user.tsm.client\\apilib\\;%PATH%");\r
TSMClient c = null;\r
try {\r
final TSMClient client = new TSMClient("JOBENGINE");\r
}\r
\r
if (objects != null && objects.length != 1) {\r
- System.out.println(houseId + " count: " + objects.length + " archived: " + rs.getTimestamp("archived"));\r
+ System.out.println(\r
+ houseId + " count: " + objects.length + " archived: " + rs.getTimestamp("archived"));\r
} else\r
\r
System.out.println(houseId);\r
\r
}\r
\r
+ @Test\r
+ public void test_check_archived_rundownstories() throws Exception {\r
+ OctopusAPI octopus = new OctopusAPI();\r
+ List<DBObject> rundowns = octopus.getRundowns(null);\r
+\r
+ System.out.println("Reading archive");\r
+ Set<String> archived = new HashSet<>();\r
+ String sql = "select mediafilehouseid from vw_items where mediatype ='Hír bejátszó'";\r
+ manager.executeQuery(sql, rs -> {\r
+ String id = rs.getString(1);\r
+\r
+ try {\r
+ if (id.contains("-"))\r
+ id = id.substring(0, id.lastIndexOf("-"));\r
+ else\r
+ id = id.substring(0, id.length() - 4);\r
+ } catch (Exception e) {\r
+ System.out.println(e.getMessage());\r
+ }\r
+\r
+ archived.add(id);\r
+ // System.out.println(id);\r
+ return true;\r
+ }, null);\r
+\r
+ System.out.println("Processing rundowns");\r
+ for (DBObject o : rundowns) {\r
+ BasicDBObject bo = (BasicDBObject) o;\r
+ System.out.println(bo.getLong(IOctopusAPI.ID) + " | " + bo.getString(IOctopusAPI.SCHEDULED_START) + " | "\r
+ + bo.getString(IOctopusAPI.NAME));\r
+ List<DBObject> stories = octopus.getRundownFullStories(bo.getLong(IOctopusAPI.ID));\r
+ if (stories == null)\r
+ continue;\r
+ for (DBObject s : stories) {\r
+ BasicDBObject bs = (BasicDBObject) s;\r
+ List<BasicDBObject> mosObjects = NoSQLUtils.asList(bs, IOctopusAPI.MOS_OBJECTS);\r
+ if (mosObjects == null)\r
+ continue;\r
+ for (BasicDBObject mos : mosObjects) {\r
+ String mosId = mos.getString(IOctopusAPI.OBJ_ID);\r
+ if (archived.contains(mosId))\r
+ System.out.println(mosId);\r
+ else\r
+ System.out.println("Missing " + mosId);\r
+ }\r
+\r
+ }\r
+ }\r
+\r
+ }\r
+\r
}\r