2 * Copyright (c) 2010-2023 Contributors to the openHAB project
4 * See the NOTICE file(s) distributed with this work for additional
7 * This program and the accompanying materials are made available under the
8 * terms of the Eclipse Public License 2.0 which is available at
9 * http://www.eclipse.org/legal/epl-2.0
11 * SPDX-License-Identifier: EPL-2.0
13 package org.openhab.binding.pulseaudio.internal.items;
15 import org.eclipse.jdt.annotation.NonNullByDefault;
18 * Abstract root class for all items in a pulseaudio server. Every item in a
19 * pulseaudio server has a name and a unique id which can be inherited by this
22 * @author Tobias Bräutigam - Initial contribution
25 public abstract class AbstractDeviceConfig {
28 protected String name;
30 public AbstractDeviceConfig(int id, String name) {
36 * returns the internal id of this device
44 public String getUIDName() {
45 return name.replaceAll("[^A-Za-z0-9_]", "_");
48 public String getPaName() {