O pacote org.osmf.traits fornece os blocos de criação para criação de característica de mídia específicas. As características definem os recursos de um elemento de mídia.
As diferentes implementações de um elemento de mídia agregam conjuntos de características diferentes dependendo das características da mídia representadas por elas. Por exemplo, um elemento de áudio pode agregar as características IAudible, IPlayable, ITemporal e ILoadable. As características individuais definem os recursos do elemento de mídia, independentemente da implementação do elemento de mídia específico. Para uma elemento de mídia que possui a característica ILoadable, a característica fornece o recurso do elemento de carregar e cancelar o carregamento. De modo semelhante, a implementação da característica IPlayable fornece o recurso de auto-reprodução do elemento de mídia.
Uma característica é adicionada a um elemento de mídia por meio do método MediaElement.addTrait()
do elemento.
A implementação das características de mídia baseia-se nos seguintes princípios:
- As características são independentes umas das outras. Portanto, uma característica de mídia não expande outra característica de mídia.
- As características despacham seus próprios eventos. As implementações das características podem ser derivadas da classe MediaTraitBase, que expande EventDispatcher e implementa IMediaTrait para manipular o envio de eventos.
- As características são identificadas pela classe de enumeração MediaTraitType.
- As características devem ser implementadas em classes separadas.
As interfaces de características têm seu uso direcionado a classes de elementos de mídia. Elas são entidades genéricas voltadas para o exterior, caracterizadas principalmente por getters sem setters, exceto pelas características que exigem propriedades definíveis externamente, como propriedades de volume ou panorama de um IAudible.
As classes de características básicas são usadas por implementações que pertencem à subclasse MediaElement. No geral, elas têm setters e getters.
Classe | Descrição |
---|
Wed Jun 13 2018, 11:25 AM Z