// You can specify all the values or you can default the Build and Revision Numbers\r
// by using the '*' as shown below:\r
// [assembly: AssemblyVersion("1.0.*")]\r
-[assembly: AssemblyVersion("2.0.6.6")]\r
-[assembly: AssemblyFileVersion("2.0.6.6")]\r
+[assembly: AssemblyVersion("2.0.6.7")]\r
+[assembly: AssemblyFileVersion("2.0.6.7")]\r
item.ID = token[ID].ToString();\r
item.Name = token[LONGNAMEID].ToString() + MXFEXT;\r
item.Agency = token[EXTAGENCY]?.ToString();\r
- //item.Created = token.Value<DateTime>(RECORDDATE);\r
+ item.Created = token.Value<DateTime>(RECORDDATE);\r
item.Modified = token.Value<DateTime>(MODIFIED);\r
int d = token.Value<int>(DURATION);\r
item.Duration = new Timecode(d).ToString();\r
public class OctopusMetadata : MetadataProvider {\r
public bool DisablePlaceHolderCheck { get; set; }\r
public bool DisableStoryCheck { get; set; }\r
+ public string RundownStoryFormat { get; set; }\r
public ProjectSettings ProjectSettings { get; set; }\r
}\r
\r
txtFilter.Text = null;\r
}\r
\r
- private void RefreshPlaceHolderIDS(String ID) {\r
- treeOctopus.Nodes.Clear();\r
-\r
- var stories = client.GetStoryFolderStories(ID);\r
- if (stories == null)\r
- return;\r
- foreach (var story in stories)\r
- treeOctopus.Nodes.Add(story.ID, String.Format($"{story.ID} {story.Name}"));\r
- }\r
-\r
- private void tabControl1_KeyDown(object sender, KeyEventArgs e) {\r
- this.OnKeyDown(e);\r
- }\r
-\r
private void treeContent_KeyDown(object sender, KeyEventArgs e) {\r
- //this.OnKeyDown(e);\r
if (e.KeyCode != Keys.F5)\r
return;\r
RefreshList();\r
foreach (var story in stories) {\r
string name = story.Name == null ? OctopusAPI.UNNAMED : story.Name;\r
//String ID = isFolderView ? story.ID : story.ParentStoryID;\r
- String ID = story.ParentStoryID;\r
- string label = ID;\r
- if (!String.IsNullOrEmpty(story.Format))\r
- label += String.Format($" [{story.Format}] {story.Name}");\r
- else\r
- label += String.Format($" {story.Name}");\r
-\r
- TreeNode storyNode = treeOctopus.Nodes.Add(ID, label);\r
+ string label = String.Empty;\r
+ string parentStoryID = story.ParentStoryID;\r
+ if (!String.IsNullOrEmpty(story.Format)) {\r
+ label = string.Format($"{parentStoryID} [{story.Format}] {story.Name}");\r
+ } else\r
+ label = String.Format($"{parentStoryID} {story.Name}");\r
+\r
+ TreeNode storyNode = treeOctopus.Nodes.Add(parentStoryID, label);\r
storyNode.Tag = story;\r
\r
if (parameters.Configuration.DisableStoryCheck)\r
\r
bool selectFirstChild = false;\r
\r
- if (lookupStoryId != null && lookupStoryId.Equals(ID)) {\r
+ if (lookupStoryId != null && lookupStoryId.Equals(parentStoryID)) {\r
if (parameters.Configuration.DisableStoryCheck)\r
selectFirstChild = true;\r
else {\r
\r
if (stories == null)\r
return;\r
- AddStories(stories);\r
+ AddStories(stories, !rbRundown.Checked);\r
}\r
\r
private void OnSearchPanelPaint(object sender, PaintEventArgs e) {\r
@StepEntry\r
public Object[] execute(ArchiveItem archiveItem, Media mediaCubeMedia, int killDateDays, IJobEngine jobEngine, IJobRuntime jobRuntime) throws Exception {\r
try {\r
+\r
setAndCheck(archiveItem, mediaCubeMedia, jobEngine);\r
File sourceMediaFile = new File(archiveItem.getMediaFile());\r
+ String sourceFileName = sourceMediaFile.getName();\r
+ jobRuntime.setDescription(String.format("%s: %s (%d bytes)", jobRuntime.getDescription(), sourceFileName, sourceMediaFile.length()));\r
\r
StoreUri sourceUri = manager.createStoreUri(RemoteStoreProtocol.LOCAL, sourceMediaFile.getParent().toString());\r
\r
evt.setCancel(!canContinue());\r
}\r
});\r
- String sourceFileName = sourceMediaFile.getName();\r
RemoteFile remoteFile = sourceUri.transferFrom(targetUri, sourceFileName, sourceFileName);\r
\r
saveMetadata(mediaCubeMedia, sourceFileName);\r
if (transcodeTask == null)\r
throw new NullPointerException("Unable to submit transcode task, server response is empty for transcode input: " + sourceFilePath);\r
\r
+ File sourceMediaFile = new File(archiveItem.getMediaFile());\r
+ String sourceFileName = sourceMediaFile.getName();\r
+ jobRuntime.setDescription(String.format("%s: %s (%d bytes)", jobRuntime.getDescription(), sourceFileName, sourceMediaFile.length()));\r
+\r
transcodeTask = monitor(jobRuntime, sourceFilePath, transcodeTask);\r
\r
jobRuntime.incrementProgress(100);\r
private static final String VIDEOBITRATE = "videobitrate";\r
private static final String VIDEOFORMAT = "videoformat";\r
private static final String KILLDATE = "killdate";\r
+ private static final String RECORDTIMESTAMP = "recordtimestamp";\r
private static String url, user, pass;\r
static {\r
url = System.getProperty(JOBENGINE_NEXIO_DB_URL);\r
\r
private void transferClips(Connection con, DBCollection collection) {\r
logger.info("Transfering clips from NEXIO MOS Gateway");\r
- String querySQL = "SELECT cd.id, c.longnameid, c.recorddate, c.extagency, c.killdate, cd.modifiedtimestamp, cd.duration, cd.videoformat, cd.videobitrate FROM ClipsTbl c LEFT OUTER JOIN ClipsDomainsTbl cd ON (cd.longnameid = c.longnameid)";\r
+ String querySQL = "SELECT cd.id, c.longnameid, c.extagency, c.killdate, cd.recordtimestamp, cd.modifiedtimestamp, cd.duration, cd.videoformat, cd.videobitrate FROM ClipsTbl c LEFT OUTER JOIN ClipsDomainsTbl cd ON (cd.longnameid = c.longnameid)";\r
logger.debug("Executing statement: {}", querySQL);\r
int count = 0;\r
try (PreparedStatement stmt = con.prepareStatement(querySQL); ResultSet rs = stmt.executeQuery();) {\r
clip.put(VIDEOFORMAT, rs.getString(VIDEOFORMAT));\r
clip.put(DURATION, rs.getLong(DURATION));\r
clip.put(MODIFIEDTIMESTAMP, rs.getTimestamp(MODIFIEDTIMESTAMP));\r
- clip.put(RECORDDATE, rs.getTimestamp(RECORDDATE));\r
+ clip.put(RECORDDATE, rs.getTimestamp(RECORDTIMESTAMP));\r
clip.put(KILLDATE, rs.getTimestamp(KILLDATE));\r
collection.insert(clip);\r
count++;\r
}\r
\r
private int compare(IJobRuntime o1, IJobRuntime o2) {\r
- return o1.getStatus().compareTo(o2.getStatus());\r
+ // return o1.getStatus().compareTo(o2.getStatus());\r
+ int ret = (o2.getPriority() - o1.getPriority());\r
+ if ((ret == 0) && (o1.getSubmitted() != null) && (o2.getSubmitted() != null)) {\r
+ ret = (int) (o2.getSubmitted().getTime() - o1.getSubmitted().getTime());\r
+ }\r
+ return ret;\r
}\r
\r
@Command\r