2016-07-05 67 views
0

我有Ecore模型,它具有屬性ID。現在,在Sirius中,我們可以通過設置操作來設置屬性值,方法是指定屬性的特徵名稱和表達式中的值天狼星的設計。現在的問題是,我想設置屬性值的ID,所以我想用java給出的方法來創建隨機數,所以我怎麼能在值表達式中調用該方法,使得功能名稱的值爲該方法返回類型。通過java方法調用設置屬性值

回答

1

Sirius中的Set操作使用表達式來獲取要設置的值。這些表達式可以寫成a variety of query languages。大多數支持回調所謂的「Java服務」,這些是純Java方法,它們必須符合一些規則。詳情請參閱the corresponding documentation section

基本上是你的情況,你需要:

  1. 撰寫暴​​露出你想要的方式,天狼星可以調用作爲服務來調用「隨機數生成」代碼一個小的Java類。
  2. 在您的VSM中註冊相應的類(在文檔中對此進行了描述)。
  3. 最後,從您的Set Value操作中的表達式調用服務,類似service:getRandomId

advanced Sirius tutorial最後還有一段關於使用可能有用的Java服務的章節。