2013-03-14 93 views
1

我在eclipse插件中有兩個命令。 (上傳並運行)。它們可以由用戶一個接一個地調用。因此,只有在上傳命令完成後調用Run纔有意義。將對象作爲參數傳遞給命令

由於上傳命令可能需要一些時間,它會安排一個WorkspaceJob以供實際執行。並在計劃工作後立即返回。

我想知道的是添加另一個名爲「Upload and Run」的命令(令人驚訝地)應該首先上傳,然後運行選擇。因此,在「上傳」命令中啓動的WorkspaceJob完成後,必須通知它。

所以我想要參數化命令,並附加IJobChangeListener,當WorkspaceJob被安排時它將會添加。

不幸的是,在我看來,它只能將字符串作爲參數傳遞給可以輕鬆轉換爲字符串的命令或對象。然而像這樣的Listener不能作爲String傳遞。

  • 我該如何提供這樣一個監聽器對象的命令?
  • 是否有其他的方法可以將命令提供給偵聽器對象(除了將其作爲參數傳遞給對象),我沒有想到?

回答

1

由於您的「上傳並運行」行動即將開始上傳,然後你可以只安排另一工作的運行動作它只是在你做任何事情之前有工作區作業引用調用join()其他。

更新: 我想你遇到了框架的限制。這些命令的目的是作爲用戶界面的抽象,而不是抽象完成任務。我只需要重複使用您擁有的Java代碼,並直接調用代碼來實現聯合功能的按鈕操作。

+0

上傳和運行方法acutally只是調用「上傳」命令啓動workspace-job上傳,所以我不能訪問workspacejov引用。 – Chris 2013-03-14 15:05:09

相關問題