2016-04-18 9 views
1

のJava SEへのJava MEから5000のJava-ファイルを持つ大規模なプロジェクトを移植する場合、私は自分のクラス(EventManagerEventListenerに同じ)でjavax.microedition.event.Eventを交換しようとしている:Java MEからSEへの移植時にjavax.microedition.event.Eventを置き換える方法は?

public class Event extends java.util.EventObject { 
    protected String mName; 
    protected Object mValue; 
    protected String mMessage; 
    protected Object mInfo; 

    public Event(Object source) { 
     super(source); 
    } 

    public Event(String event, String value, String message, Object info) { 
     super(null); // throws IllegalArgumentException 

     mName = event; 
     mValue = value; 
     mMessage = message; 
     mInfo = info; 
    } 

残念ながら、基本クラスjava.util.EventObjectsourcenullのようにはありません。

私は検索し、適切なJavaソースコードを見つけることができませんでした。

私の質問は:

ここコンストラクタpublic Event(String event, String value, String message, Object info)の代替を書くためにどのように? sourceの設定方法はどこですか?

+0

なぜ新しいイベントがソースオブジェクトなしで表示されるのですか?イベントを使用するコードを破ることはできませんか? – JimmyB

+0

なぜそれは問題ですか?私はカスタム 'Event'オブジェクトを構築し、カスタム' EventManager'( 'EventListener'オブジェクトの' Set'の 'Map'を保持し、それらの' handleEvent'メソッドを呼び出します)に 'post()'します。 –

答えて

2
public class Event extends java.util.EventObject { 

    public static final Object UNKNOWN_SOURCE = new Object(); 

    public Event(String event, String value, String message, Object info) { 
     super(UNKNOWN_SOURCE); 

     mName = event; 
     mValue = value; 
     mMessage = message; 
     mInfo = info; 
    } 
+0

Java MEがこれをどのように処理するのか不思議ですが、Java MEのソースコードが見つかりませんでした。それらにも同様の 'UNKNOWN_SOURCE'オブジェクトがありますか? –

関連する問題