All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.opentok.MuteAllProperties Maven / Gradle / Ivy

/**
 * OpenTok Java SDK
 * Copyright (C) 2023 Vonage.
 * http://www.tokbox.com
 *
 * Licensed under The MIT License (MIT). See LICENSE file for more information.
 */
package com.opentok;

import java.util.ArrayList;
import java.util.List;

/**
 * Defines values for the properties parameter of the
 * {@link OpenTok#forceMuteAll(String, MuteAllProperties)} method.
 *
 * @see OpenTok#forceMuteAll(String, MuteAllProperties)
 */
public class MuteAllProperties {
    private List excludedStreamIds;

    private MuteAllProperties(MuteAllProperties.Builder builder) {
        this.excludedStreamIds = builder.excludedStreamIds;
    }

    /**
     * Use this class to create a MuteAllProperties object.
     *
     * @see MuteAllProperties
     */
    public static class Builder {
        private List excludedStreamIds = new ArrayList<>();

        /**
         * Call this method to add a List of stream IDs for streams to be excluded
         * from the force mute action.
         *
         * @param ids The List of stream IDs.
         *
         * @return The MuteAllProperties.Builder object with excludedStreamIds list.
         */
        public MuteAllProperties.Builder excludedStreamIds(List ids) {
            this.excludedStreamIds.addAll(ids);
            return this;
        }

        /**
         * Builds the MuteAllProperties object.
         *
         * @return The MuteAllProperties object.
         */
        public MuteAllProperties build() {
            return new MuteAllProperties(this);
        }
    }

    /**
     * Returns the excludedStreams list. This is a list of stream IDs for
     * streams to be excluded from the force mute action.
     *
     * @return The list of stream IDs.
     */
    public List getExcludedStreamIds() {
        return this.excludedStreamIds;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy