diff --git a/PlayWall/src/main/java/de/tobias/playpad/action/mapper/MidiMapper.java b/PlayWall/src/main/java/de/tobias/playpad/action/mapper/MidiMapper.java index 9e251043cb8f1dcbbcd69a1b177a97bac567c48d..495ea269618bffdab337ce43a26ff1c08f2ddb4f 100644 --- a/PlayWall/src/main/java/de/tobias/playpad/action/mapper/MidiMapper.java +++ b/PlayWall/src/main/java/de/tobias/playpad/action/mapper/MidiMapper.java @@ -146,7 +146,7 @@ public class MidiMapper extends Mapper implements ColorAssociator, MapperFeedbac MidiDeviceImpl midiDeviceImpl = Midi.getInstance().getMidiDevice(); if (midiDeviceImpl != null) { if (midiDeviceImpl instanceof DeviceColorAssociatorConnector) { - return ((DeviceColorAssociatorConnector) midiDeviceImpl).map(color); + return ((DeviceColorAssociatorConnector) midiDeviceImpl).getPreferColorMapping(color); } } return null; diff --git a/PlayWallCore/src/main/java/de/tobias/playpad/action/mididevice/DeviceColorAssociatorConnector.java b/PlayWallCore/src/main/java/de/tobias/playpad/action/mididevice/DeviceColorAssociatorConnector.java index 16804f7a070de2f281118a77c0382b22e6f7d006..9ef99ee272b9ae3a75319ff102a2a330a66758a0 100644 --- a/PlayWallCore/src/main/java/de/tobias/playpad/action/mididevice/DeviceColorAssociatorConnector.java +++ b/PlayWallCore/src/main/java/de/tobias/playpad/action/mididevice/DeviceColorAssociatorConnector.java @@ -11,5 +11,5 @@ public interface DeviceColorAssociatorConnector { DisplayableFeedbackColor[] getColors(); - DisplayableFeedbackColor map(Color color); + DisplayableFeedbackColor getPreferColorMapping(Color color); } diff --git a/PlayWallCore/src/main/java/de/tobias/playpad/midi/device/DeviceRegistry.java b/PlayWallCore/src/main/java/de/tobias/playpad/midi/device/DeviceRegistry.java index 957466f7f11e6d07e24b98a3383e6d23d8332a00..42a602db29625c400e85da256ddf3b9a35a950db 100644 --- a/PlayWallCore/src/main/java/de/tobias/playpad/midi/device/DeviceRegistry.java +++ b/PlayWallCore/src/main/java/de/tobias/playpad/midi/device/DeviceRegistry.java @@ -6,6 +6,8 @@ import de.tobias.playpad.action.mididevice.MidiDeviceImpl; import de.tobias.playpad.event.Event; import de.tobias.playpad.event.EventDispatcher; +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; import java.util.HashMap; import java.util.List; @@ -49,12 +51,16 @@ public class DeviceRegistry extends EventDispatcher { * @see DeviceRegistry#registerDevice(String, Class) * @see DefaultMidiDeviceImpl */ - public MidiDeviceImpl getDevice(String id) throws InstantiationException, IllegalAccessException { + public MidiDeviceImpl getDevice(String id) throws NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException { if (devices.containsKey(id)) { - System.out.println("Recognize known MIDI device: " + id); - return devices.get(id).newInstance(); + Logger.debug("Recognize known MIDI device: " + id); + + final Class<? extends MidiDeviceImpl> deviceClass = devices.get(id); + final Constructor<? extends MidiDeviceImpl> constructor = deviceClass.getConstructor(); + + return constructor.newInstance(); } else { - System.out.println("Use Default MIDI device"); + Logger.debug("Use Default MIDI device"); return new DefaultMidiDeviceImpl(); } } diff --git a/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/impl/LaunchpadPluginImpl.java b/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/impl/LaunchpadPluginImpl.java index 848e30040303aaafb82fe48c04f2dd7b9d03acc6..dd80ff18daac0fbe98d9f4c2bacd95a259daef68 100644 --- a/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/impl/LaunchpadPluginImpl.java +++ b/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/impl/LaunchpadPluginImpl.java @@ -1,41 +1,33 @@ package de.tobias.playpad.launchpadplugin.impl; +import de.thecodelabs.logger.Logger; import de.thecodelabs.plugins.PluginArtifact; import de.thecodelabs.plugins.PluginDescriptor; -import de.thecodelabs.utils.util.Localization; import de.tobias.playpad.launchpadplugin.midi.mk2.LaunchPadMK2; import de.tobias.playpad.launchpadplugin.midi.s.LaunchPadS; import de.tobias.playpad.midi.device.DeviceRegistry; import de.tobias.playpad.plugin.Module; import de.tobias.playpad.plugin.PlayPadPluginStub; -import java.util.ResourceBundle; - +@SuppressWarnings("unused") public class LaunchpadPluginImpl implements PlayPadPluginStub, PluginArtifact { - private static ResourceBundle bundle; - private Module module; @Override public void startup(PluginDescriptor descriptor) { - bundle = Localization.loadBundle("lang/launchpad", LaunchpadPluginImpl.class.getClassLoader()); module = new Module(descriptor.getName(), descriptor.getArtifactId()); DeviceRegistry deviceFactory = DeviceRegistry.getFactoryInstance(); deviceFactory.registerDevice(LaunchPadMK2.NAME, LaunchPadMK2.class); deviceFactory.registerDevice(LaunchPadS.NAME, LaunchPadS.class); - System.out.println("Enable LaunchPad Plugin"); + Logger.debug("Enable LaunchPad Plugin"); } @Override public void shutdown() { - System.out.println("Disable LaunchPad Plugin"); - } - - public static ResourceBundle getBundle() { - return bundle; + Logger.debug("Disable LaunchPad Plugin"); } @Override diff --git a/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/midi/mk2/LaunchPadMK2.java b/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/midi/mk2/LaunchPadMK2.java index 9cf89923fb709cffb390de53c775784b486e6bbb..c9c37cf7b18c20a8052f90743f9028426ec0384a 100644 --- a/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/midi/mk2/LaunchPadMK2.java +++ b/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/midi/mk2/LaunchPadMK2.java @@ -1,5 +1,6 @@ package de.tobias.playpad.launchpadplugin.midi.mk2; +import de.thecodelabs.logger.Logger; import de.tobias.playpad.action.feedback.DisplayableFeedbackColor; import de.tobias.playpad.action.feedback.Feedback; import de.tobias.playpad.action.feedback.FeedbackMessage; @@ -22,12 +23,12 @@ public class LaunchPadMK2 extends MidiDeviceImpl implements DeviceColorAssociato // Modern Colors mapped to the colors of the launchpad private static Map<String, String> mapProperties; - public LaunchPadMK2() { + static { try { - URL resource = getClass().getClassLoader().getResource("launchpad_mk2.map"); + URL resource = LaunchPadMK2.class.getClassLoader().getResource("launchpad_mk2.map"); mapProperties = MapParser.load(resource); } catch (Exception e) { - e.printStackTrace(); + Logger.error(e); } } @@ -43,6 +44,7 @@ public class LaunchPadMK2 extends MidiDeviceImpl implements DeviceColorAssociato @Override public void initDevice() { + // nothing to do } @Override @@ -56,13 +58,13 @@ public class LaunchPadMK2 extends MidiDeviceImpl implements DeviceColorAssociato Midi.getInstance().sendMessage(144, key, value); } } catch (MidiUnavailableException | InvalidMidiDataException e) { - e.printStackTrace(); + Logger.error(e); } } else { try { Midi.getInstance().sendMessage(145, key, feedback.getValueForFeedbackMessage(FeedbackMessage.STANDARD)); } catch (MidiUnavailableException | InvalidMidiDataException e) { - e.printStackTrace(); + Logger.error(e); } } } @@ -76,7 +78,7 @@ public class LaunchPadMK2 extends MidiDeviceImpl implements DeviceColorAssociato try { Midi.getInstance().sendMessage(ShortMessage.NOTE_ON, i, 0); } catch (MidiUnavailableException | InvalidMidiDataException e) { - e.printStackTrace(); + Logger.error(e); } } @@ -89,7 +91,7 @@ public class LaunchPadMK2 extends MidiDeviceImpl implements DeviceColorAssociato try { Midi.getInstance().sendMessage(ShortMessage.CONTROL_CHANGE, i, 0); } catch (MidiUnavailableException | InvalidMidiDataException e) { - e.printStackTrace(); + Logger.error(e); } } } @@ -115,7 +117,7 @@ public class LaunchPadMK2 extends MidiDeviceImpl implements DeviceColorAssociato } @Override - public DisplayableFeedbackColor map(Color color) { + public DisplayableFeedbackColor getPreferColorMapping(Color color) { if (mapProperties.containsKey(color.toString())) { String nameOfConst = mapProperties.get(color.toString()); return LaunchPadMK2Color.valueOf(nameOfConst); diff --git a/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/midi/s/LaunchPadS.java b/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/midi/s/LaunchPadS.java index b6ead3928604d7c3e9a230fcbd2054a806b55265..2432014fb34503c8fb7293403924aab698258e82 100644 --- a/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/midi/s/LaunchPadS.java +++ b/PlayWallPluginLaunchpad/src/main/java/de/tobias/playpad/launchpadplugin/midi/s/LaunchPadS.java @@ -1,5 +1,6 @@ package de.tobias.playpad.launchpadplugin.midi.s; +import de.thecodelabs.logger.Logger; import de.tobias.playpad.action.feedback.DisplayableFeedbackColor; import de.tobias.playpad.action.feedback.Feedback; import de.tobias.playpad.action.feedback.FeedbackMessage; @@ -31,7 +32,7 @@ public class LaunchPadS extends MidiDeviceImpl implements DeviceColorAssociatorC try { Midi.getInstance().sendMessage(176, 0, 40); } catch (MidiUnavailableException | InvalidMidiDataException e) { - e.printStackTrace(); + Logger.error(e); } } @@ -54,7 +55,7 @@ public class LaunchPadS extends MidiDeviceImpl implements DeviceColorAssociatorC Midi.getInstance().sendMessage(command, key, midiVelocity); } } catch (MidiUnavailableException | InvalidMidiDataException e) { - e.printStackTrace(); + Logger.error(e); } } @@ -63,7 +64,7 @@ public class LaunchPadS extends MidiDeviceImpl implements DeviceColorAssociatorC try { Midi.getInstance().sendMessage(176, 0, 0); } catch (MidiUnavailableException | InvalidMidiDataException e) { - e.printStackTrace(); + Logger.error(e); } } @@ -88,7 +89,7 @@ public class LaunchPadS extends MidiDeviceImpl implements DeviceColorAssociatorC } @Override - public DisplayableFeedbackColor map(Color color) { + public DisplayableFeedbackColor getPreferColorMapping(Color color) { return null; } } diff --git a/PlayWallPluginLaunchpad/src/main/resources/lang/launchpad_de.properties b/PlayWallPluginLaunchpad/src/main/resources/lang/launchpad_de.properties deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000