Presentation is loading. Please wait.

Presentation is loading. Please wait.

An ASL Appetizer ASL!. Overview What is ASL? What can I do with ASL? Demo.

Similar presentations


Presentation on theme: "An ASL Appetizer ASL!. Overview What is ASL? What can I do with ASL? Demo."— Presentation transcript:

1 An ASL Appetizer ASL!

2 Overview What is ASL? What can I do with ASL? Demo

3 What is ASL? Adapter Scripting Language Not a general purpose language Limited I/O (no user interaction) No library support The native scripting language of InCharge

4 Unique Strengths of ASL A Parser Makes it easy to parse files of any format As powerful as regular expressions but easier to read! Can connect two InCharge processes Many built in connections are implemented in ASL Embedded in all of the InCharge binaries Runs inside of an InCharge server Always available in any InCharge environment

5 InCharge Binary What are the InCharge binaries? sm_serverSAM IP AM/PM NPM sm_adapter Trap Adapter Syslog Adapter EMOM Adapter sm_trapd brstartBroker

6 InCharge Binary What are the InCharge binaries? sm_server sm_adapter sm_trapd brstart Platform Binary

7 A Peek Inside…. Client API Server API Model Repos ASL Interpreter Correlation Engine ASL Threads sm_whatever…

8 What can ASL do?

9 Interact with a remote repository Client API Server API Repos sm_whatever… routers = getInstances(Router); foreach r (routers) { rObj = object(Router, r); } Client Server sm_adapter –s REMOTE_SERVER

10 Interact with the local repository Client API Server API Repos sm_whatever… routers = self->getInstances(Router); foreach r (routers) { rObj = self->object(Router, r); } sm_adapter

11 Subscribe to Topology and/or Events Client API Server API Repos sm_whatever… START { timeStamp : integer fs NOTIFY fs class : word fs instance : word fs event : word fs conf : integer fs } Client Server sm_adapter –-subscribe=.*::.*::.*/pae

12 Read/Parse a file Client API Server API Repos sm_whatever… START { h : word c : word..eol } do { adp->addPending(h,c,Read from file); } plan_r.afnoc.mil poe fluid.gnt.mil poe essence.brk.mil poe sm_adapter --file=jdr.txt

13 Write to a file Client API Server API Repos sm_whatever… fo = create(ACT_File, myFileObj); Fo->fileName = myAdapter.log; foreach n (getInstances(Node) { obj = object(n); fo->writeln(obj->CreatonClass.\t.n); } Router gw1-i-fw-001 Host im2-i-fms-001 sm_adapter –m sm_actions

14 Launch other ASL threads Client API Server API Repos sm_whatever… drv = create(GA_Driver, myDrv); drv->ReadsRulesFrom = create(GA_RuleSet, myRules); drv->ReadsRulesFrom->fileName=foo.asl; drv->start();

15 Demo

16 Summary We now know what is ASL We now know what can ASL do We have seen code examples More questions….?

17 For Further Information… ASL Reference Guide asl_ref.pdf Found in products doc/pdf directory


Download ppt "An ASL Appetizer ASL!. Overview What is ASL? What can I do with ASL? Demo."

Similar presentations


Ads by Google