public ModelPlaylist(uint aId, ServicePlaylistManager aServicePlaylistManager)
        {
            iId = aId;
            iServicePlaylistManager = aServicePlaylistManager;

            iActionDeleteId = iServicePlaylistManager.CreateAsyncActionDeleteId();

            iIdArray = new ModelIdArray(new PlaylistIdArray(aId, aServicePlaylistManager));
        }
        public PlaylistManagers(ISsdpNotifyProvider aListenerNotify)
        {
            // create discovery system

            iDeviceListPlaylistManager = new DeviceListUpnp(ServicePlaylistManager.ServiceType(), aListenerNotify);
            iDeviceListPlaylistManager.EventDeviceAdded   += PlaylistManagerAdded;
            iDeviceListPlaylistManager.EventDeviceRemoved += PlaylistManagerRemoved;

            iLock             = new object();
            iJobList          = new List <IJob>();
            iJobReady         = new ManualResetEvent(false);
            iPlaylistManagers = new Dictionary <Device, PlaylistManager>();
        }
        public ModelPlaylistManager(PlaylistManager aPlaylistManager, IEventUpnpProvider aEventServer)
        {
            iPlaylistManager = aPlaylistManager;

            try
            {
                iServicePlaylistManager = new ServicePlaylistManager(iPlaylistManager.Device, aEventServer);
            }
            catch (ServiceException)
            {
                throw new ModelSourceException(301, "Service failure");
            }

            iActionPlaylistDeleteId = iServicePlaylistManager.CreateAsyncActionPlaylistDeleteId();

            iLock = new object();

            iModelPlaylistList = new Dictionary <uint, ModelPlaylist>();

            iIdArray = new ModelIdArray(new PlaylistsIdArray(iServicePlaylistManager, this));
            iIdArray.EventIdArrayChanged += EventIdArrayChanged;
        }
 public PlaylistsIdArray(ServicePlaylistManager aServicePlaylistManager, ModelPlaylistManager aModelPlaylistManger)
 {
     iServicePlaylistManager = aServicePlaylistManager;
     iModelPlaylistManager   = aModelPlaylistManger;
 }
 public PlaylistIdArray(uint aPlaylistId, ServicePlaylistManager aServicePlaylistManager)
 {
     iPlaylistId             = aPlaylistId;
     iServicePlaylistManager = aServicePlaylistManager;
 }