diff options
| author | Mike Lockwood <lockwood@google.com> | 2015-03-30 08:39:09 -0700 |
|---|---|---|
| committer | Mike Lockwood <lockwood@google.com> | 2015-03-30 09:06:06 -0700 |
| commit | d1b16fe2fb7527eee214898263ec4d6dabbfb0b4 (patch) | |
| tree | ff470b12d9560787ba6a3bed1ee31923765ee2d0 /media | |
| parent | fc2d615a7b71634615225e8f14558ede5856bbd1 (diff) | |
| download | frameworks_base-d1b16fe2fb7527eee214898263ec4d6dabbfb0b4.zip frameworks_base-d1b16fe2fb7527eee214898263ec4d6dabbfb0b4.tar.gz frameworks_base-d1b16fe2fb7527eee214898263ec4d6dabbfb0b4.tar.bz2 | |
Move MIDI utilities for internal use to com.android.internal.midi package
Change-Id: I7393ae1d4bca61667fb6ee809a7aa22c5c48de56
Diffstat (limited to 'media')
| -rw-r--r-- | media/java/android/media/midi/MidiDeviceServer.java | 2 | ||||
| -rw-r--r-- | media/java/android/media/midi/MidiDispatcher.java | 84 | ||||
| -rw-r--r-- | media/java/android/media/midi/MidiOutputPort.java | 2 |
3 files changed, 4 insertions, 84 deletions
diff --git a/media/java/android/media/midi/MidiDeviceServer.java b/media/java/android/media/midi/MidiDeviceServer.java index d27351f..bc85f92 100644 --- a/media/java/android/media/midi/MidiDeviceServer.java +++ b/media/java/android/media/midi/MidiDeviceServer.java @@ -24,6 +24,8 @@ import android.os.RemoteException; import android.system.OsConstants; import android.util.Log; +import com.android.internal.midi.MidiDispatcher; + import dalvik.system.CloseGuard; import libcore.io.IoUtils; diff --git a/media/java/android/media/midi/MidiDispatcher.java b/media/java/android/media/midi/MidiDispatcher.java deleted file mode 100644 index 0868346..0000000 --- a/media/java/android/media/midi/MidiDispatcher.java +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Copyright (C) 2015 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package android.media.midi; - -import java.io.IOException; -import java.util.concurrent.CopyOnWriteArrayList; - -/** - * Utility class for dispatching MIDI data to a list of {@link MidiReceiver}s. - * This class subclasses {@link MidiReceiver} and dispatches any data it receives - * to its receiver list. Any receivers that throw an exception upon receiving data will - * be automatically removed from the receiver list, but no IOException will be returned - * from the dispatcher's {@link #onReceive} in that case. - * - * @hide - */ -public final class MidiDispatcher extends MidiReceiver { - - private final CopyOnWriteArrayList<MidiReceiver> mReceivers - = new CopyOnWriteArrayList<MidiReceiver>(); - - private final MidiSender mSender = new MidiSender() { - /** - * Called to connect a {@link MidiReceiver} to the sender - * - * @param receiver the receiver to connect - */ - public void connect(MidiReceiver receiver) { - mReceivers.add(receiver); - } - - /** - * Called to disconnect a {@link MidiReceiver} from the sender - * - * @param receiver the receiver to disconnect - */ - public void disconnect(MidiReceiver receiver) { - mReceivers.remove(receiver); - } - }; - - /** - * Returns the number of {@link MidiReceiver}s this dispatcher contains. - * @return the number of receivers - */ - public int getReceiverCount() { - return mReceivers.size(); - } - - /** - * Returns a {@link MidiSender} which is used to add and remove {@link MidiReceiver}s - * to the dispatcher's receiver list. - * @return the dispatcher's MidiSender - */ - public MidiSender getSender() { - return mSender; - } - - @Override - public void onReceive(byte[] msg, int offset, int count, long timestamp) throws IOException { - for (MidiReceiver receiver : mReceivers) { - try { - receiver.sendWithTimestamp(msg, offset, count, timestamp); - } catch (IOException e) { - // if the receiver fails we remove the receiver but do not propagate the exception - mReceivers.remove(receiver); - } - } - } -} diff --git a/media/java/android/media/midi/MidiOutputPort.java b/media/java/android/media/midi/MidiOutputPort.java index b8ed36f..0290a76 100644 --- a/media/java/android/media/midi/MidiOutputPort.java +++ b/media/java/android/media/midi/MidiOutputPort.java @@ -21,6 +21,8 @@ import android.os.ParcelFileDescriptor; import android.os.RemoteException; import android.util.Log; +import com.android.internal.midi.MidiDispatcher; + import dalvik.system.CloseGuard; import libcore.io.IoUtils; |
