2017-05-29 27 views
0

我是絕對新的WSO2 ESB我對如何正確「重構」我的項目有以下疑問。如何正確地將序列插入WSO2 ESB流?

我有一個項目工作得很好。這個項目正在不斷髮展,我對如何保持整潔有些懷疑。

它試圖詳細解釋情況。

開始時我只有一個API。 API流程非常複雜,所以我將它分成多個序列。

所以我主要的API文件,像這樣:

<?xml version="1.0" encoding="UTF-8"?> 
<api context="/MY_API_1" name="MY_API_1" xmlns="http://ws.apache.org/ns/synapse"> 
    <resource methods="GET" uri-template="/{sampleId}"> 
     <inSequence> 
      <property expression="get-property('uri.var.sampleId')" name="samplePK" scope="default" type="STRING"/> 
      <log level="custom"> 
       <property expression="$ctx:samplePK" name="SAMPLE ID (PK)"/> 
      </log> 

      <!-- DO SOME OPERATIONS --> 

      <!-- GO TO THE CODE DEFINED INTO THE sampleDataSequence --> 
      <sequence key="sampleDataSequence"/> 

      <!-- DO SOME OTHER OPERATION THAT QUIT THE "MY_API_1" API FLOW --> 

     </inSequence> 
     <outSequence> 
      <send/> 
     </outSequence> 
     <faultSequence/> 
    </resource> 
</api> 

正如你可以在上面的代碼中,我指定在某一點流定義被定義爲sampleDataSequence見序列,就是這個文件\ glis-toolkit \ glis-toolkit \ src \ main \ synapse-config \ sequences \ sampleDataSequence.xml(所以它被定義爲序列文件夾在我的項目中)。

反過來也進入sampleDataSequence.xml有一些序列定義(因爲我的流量很大,我把它分成不同的邏輯部分)。

它工作得很好。問題是,現在我正在創建第二個API,必須按不同的順序進行分割。所以我知道我可以將所有這些新序列放入我的項目的相同\ synapse-config \ sequences文件夾中。但我認爲這非常可怕,因爲我將很多序列文件放入相關的不同API中產生混淆的相同文件夾中。

有一種方法可以將新API的序列文件放到不同的文件夾中嗎?或者\ synapse-config \ sequences文件夾(例如:** \ synapse-config \ sequences \ myApi2 **)的子文件夾

我的問題是(據我所知)插入序列到流我做這樣的事情:

<sequence key="mySequence"/> 

,將插入mySequence.xml文件內容從自動把它\突觸配置\序列文件夾。

我可以指定mySequence.xml文件到另一個文件夾或我的的\突觸配置\序列文件夾的子文件夾?

回答

0

如果您希望將它們移動到註冊表資源項目,可能會更容易組織您的序列。然後,你可以參考你的序列中相應的文件結構:

<sequence key="gov:/sequences/myApi2/mySequence"/> 

不要忘了你的註冊表資源項目添加到您的汽車項目,讓那些序列部署您的ESB配置項目的其餘部分。