@Override public String apply(MediaPackageElement mediaPackageElement) { return mediaPackageElement.getIdentifier(); } };
/** * @see org.opencastproject.mediapackage.MediaPackage#getCatalog(java.lang.String) */ @Override public Catalog getCatalog(String catalogId) { synchronized (elements) { for (MediaPackageElement e : elements) { if (e.getIdentifier().equals(catalogId) && e instanceof Catalog) return (Catalog) e; } } return null; }
/** * {@inheritDoc} * * @see org.opencastproject.mediapackage.MediaPackage#getAttachment(java.lang.String) */ @Override public Attachment getAttachment(String attachmentId) { synchronized (elements) { for (MediaPackageElement e : elements) { if (e.getIdentifier().equals(attachmentId) && e instanceof Attachment) return (Attachment) e; } } return null; }
/** * {@inheritDoc} * * @see org.opencastproject.mediapackage.MediaPackage#getTrack(java.lang.String) */ @Override public Track getTrack(String trackId) { synchronized (elements) { for (MediaPackageElement e : elements) { if (e.getIdentifier().equals(trackId) && e instanceof Track) return (Track) e; } } return null; }
/** * @see org.opencastproject.mediapackage.MediaPackage#getElementById(java.lang.String) */ @Override public MediaPackageElement getElementById(String id) { for (MediaPackageElement element : getElements()) { if (id.equals(element.getIdentifier())) return element; } return null; }
/** * Returns <code>true</code> if the media package contains an element with the specified identifier. * * @param identifier * the identifier * @return <code>true</code> if the media package contains an element with this identifier */ public static boolean contains(String identifier, MediaPackage mp) { for (MediaPackageElement element : mp.getElements()) { if (element.getIdentifier().equals(identifier)) return true; } return false; }
/** * Returns <code>true</code> if the media package contains an element with the specified identifier. * * @param identifier * the identifier * @return <code>true</code> if the media package contains an element with this identifier */ boolean contains(String identifier) { for (MediaPackageElement element : getElements()) { if (element.getIdentifier().equals(identifier)) return true; } return false; }
/** * Returns the media package element that matches the given reference. * * @param reference * the reference * @return the element */ MediaPackageElement getElement(MediaPackageReference reference) { if (reference == null) return null; for (MediaPackageElement e : elements) { if (e.getIdentifier().equals(reference.getIdentifier())) return e; } return null; }
/** * Creates a reference to the specified media package element. * <p> * Note that the referenced element must already be part of the media package, otherwise a * <code>MediaPackageException</code> will be thrown as the object holding this reference is added to the media * package. * * @param mediaPackageElement * the media package element to refer to */ public MediaPackageReferenceImpl(MediaPackageElement mediaPackageElement) { if (mediaPackageElement == null) throw new IllegalArgumentException("Parameter media package element must not be null"); this.type = mediaPackageElement.getElementType().toString().toLowerCase(); this.identifier = mediaPackageElement.getIdentifier(); if (identifier == null) throw new IllegalArgumentException("Media package element must have an identifier"); this.properties = new HashMap<String, String>(); }
/** Update a mediapackage element of a mediapackage. Mutates <code>mp</code>. */ public static void updateElement(MediaPackage mp, MediaPackageElement e) { mp.removeElementById(e.getIdentifier()); mp.add(e); }
/** * @see java.lang.Object#equals(java.lang.Object) */ @Override public boolean equals(Object obj) { if (!(obj instanceof MediaPackageElement)) return false; MediaPackageElement e = (MediaPackageElement) obj; if (mediaPackage != null && e.getMediaPackage() != null && !mediaPackage.equals(e.getMediaPackage())) return false; if (id != null && !id.equals(e.getIdentifier())) return false; if (uri != null && !uri.equals(e.getURI())) return false; return true; }
/** * {@inheritDoc} * * @see org.opencastproject.mediapackage.MediaPackage#getElementByReference(org.opencastproject.mediapackage.MediaPackageReference) */ @Override public MediaPackageElement getElementByReference(MediaPackageReference reference) { for (MediaPackageElement e : this.elements) { if (!reference.getType().equalsIgnoreCase(e.getElementType().toString())) continue; if (reference.getIdentifier().equals(e.getIdentifier())) return e; } return null; }
try { for (MediaPackageElement e : src.elements()) { if (dest.getElementById(e.getIdentifier()) == null) dest.add(e); else { if (MergeMode.Replace == mode) { logger.debug("Replacing element " + e.getIdentifier() + " while merging " + dest + " with " + src); dest.remove(dest.getElementById(e.getIdentifier())); dest.add(e); } else if (MergeMode.Skip == mode) { logger.debug("Skipping element " + e.getIdentifier() + " while merging " + dest + " with " + src); continue; } else if (MergeMode.Merge == mode) { logger.debug("Renaming element " + e.getIdentifier() + " while merging " + dest + " with " + src); e.setIdentifier(null); dest.add(e); } else if (MergeMode.Fail == mode) { throw new MediaPackageException("Target media package " + dest + " already contains element with id " + e.getIdentifier());
if (element.getIdentifier() == null) { if (element instanceof AbstractMediaPackageElement) { element.setIdentifier(id);
String ext = uri.substring(uri.lastIndexOf(".")); transcription.setURI(workspace.moveTo(transcription.getURI(), mediaPackage.getIdentifier().toString(), transcription.getIdentifier(), "captions." + ext)); } catch (Exception e) { throw new WorkflowOperationException(e);
String fileName = FilenameUtils.getName(timelinePreviewsMpe.getURI().getPath()); URI timelinePreviewsWfrUri = workspace.put(mediaPackage.getIdentifier().compact(), timelinePreviewsMpe.getIdentifier(), fileName, timelinePreviewsInputStream); timelinePreviewsMpe.setURI(timelinePreviewsWfrUri); } catch (FileNotFoundException ex) {
try { waveformMpe = MediaPackageElementParser.getFromXml(jobPayload); URI newURI = workspace.moveTo(waveformMpe.getURI(), mediaPackage.getIdentifier().toString(), waveformMpe.getIdentifier(), "waveform.png"); waveformMpe.setURI(newURI);