Jämförda versioner

Nyckel

  • Dessa rader lades till.
  • Denna rad togs bort.
  • Formateringen ändrades.

...

För att anropa VP Camel med Soap-requests så behöver man sätta upp en testmiljö med t.ex. SoapUI.

...

Om hur Camel används för att styra data flödet i VP

...

Camel implementerar ett så kallat domän specifikt språk (E)DSL. Detta används för att styra data flödet mellan olika processer. Vilket görs genom att man skapar upp en eller flera flöden kallade Routes i en Routebilder.

Dessa Route:s kan i sin tur ha olika in och utgångar eller vara sammankopplade. Detta gör att det är enkelt att skriva kod där varje steg i processen kan skrivas av en enskild klass med en specifik uppgift. Dessa steg kan sedan relativt enkelt kopplas samman i flöden som är enkla att överblicka och följa. Det gör det även enkelt att lägga till eller dra ifrån steg i processen, skapa undantag och vägval efter behov och eller återanvända flera steg i en process genom att skapa en specifik Route för dessa.

Med de positiva superlativen om Camel så kan det vara Det finns många positiva superlativ att orda om Camel. Men det är värt att notera att det är lätt , att som ny användare av ramverket är det lätt att förväxla en Route konfigurering med kod som exekveras (it walks and talks like a duck)passerar anktestet). Men egentligen är det API:et till ramverket som utformats så att det “liknar” programering. Det här är för det mesta inget mer bra än ett problem men är värt att ha i bakhuvudet.

Flödesdiagrammet mappar ganska väl med de Routes som De Routes/Flöden som styr data flödet i VP skapas upp i klassen VPRouter. Den klassen är en väldigt bra ingång, för att få en överblick över VP och man . Man kan mycket väl hävda att den på sätt och vis bättre beskriver flödet än diagrammet som länkats ovant.ex. ett flödesdiagram.

För att flytta data mellan process stegen processen/Routen används ett Exchange objekt. Detta är en realisering av konceptet Message exchange pattern vilket vi känner igen från t.ex. Rest SOAP etc. Som nämnts kan en Route börja i lite av varje men i VP:s fall kommer Exchange objektet att emanera från web-socket och den komponent vi använder för detta kommer att stoppa in Exchange objektet som placeholder för data som kommer in den vägen. Egentligen: payloaden (SOAP meddelandet) hamnar i attributet In,.Body, headrar i In.Headers etc. o.s.v.

...