// Path: core/src/main/java/au/com/sensis/stubby/model/StubExchange.java
// public class StubExchange {
// 
//     private StubRequest request;
//     private StubResponse response;
//     private Long delay;
//     private String script;
//     
//     public StubExchange() { }
//     
//     public StubExchange(StubExchange other) { // copy constructor
//         this.request = (other.request != null) ? new StubRequest(other.request) : null;
//         this.response = (other.response != null) ? new StubResponse(other.response) : null;
//         this.delay = other.delay;
//         this.script = other.script;
//     }
// 
//     public StubRequest getRequest() {
//         return request;
//     }
// 
//     public void setRequest(StubRequest request) {
//         this.request = request;
//     }
// 
//     public StubResponse getResponse() {
//         return response;
//     }
// 
//     public void setResponse(StubResponse response) {
//         this.response = response;
//     }
// 
//     public Long getDelay() {
//         return delay;
//     }
// 
//     public void setDelay(Long delay) {
//         this.delay = delay;
//     }
// 
//     public String getScript() {
//         return script;
//     }
// 
//     public void setScript(String script) {
//         this.script = script;
//     }
// 
// }
// 
// Path: core/src/main/java/au/com/sensis/stubby/model/StubRequest.java
// public class StubRequest extends StubMessage {
// 
//     private String method;
//     private String path;
//     private List<StubParam> params;
// 
//     public StubRequest() { }
//     
//     public StubRequest(StubRequest other) { // copy constructor
//         super(other);
//         this.method = other.method;
//         this.path = other.path;
//         if (other.params != null) {
//             this.params = new ArrayList<StubParam>();
//             for (StubParam param : other.params) {
//                 this.params.add(new StubParam(param));
//             }
//         }
//     }
//     
//     public String getMethod() {
//         return method;
//     }
// 
//     public void setMethod(String method) {
//         this.method = method;
//     }
// 
//     public String getPath() {
//         return path;
//     }
// 
//     public void setPath(String path) {
//         this.path = path;
//     }
// 
//     public List<StubParam> getParams() {
//         return params;
//     }
// 
//     public void setParams(List<StubParam> params) {
//         this.params = params;
//     }
//     
//     @JsonIgnore
//     public String getParam(String name) { // get first, case sensitive lookup
//         if (params != null) {
//             for (StubParam param : params) {
//                 if (param.getName().equals(name)) {
//                     return param.getValue();
//                 }
//             }
//         }
//         return null; // not found
//     }
// 
//     @JsonIgnore
//     public List<String> getParams(String name) { // get all, case sensitive lookup
//         List<String> result = new ArrayList<String>();
//         if (params != null) {
//             for (StubParam param : params) {
//                 if (param.getName().equals(name)) {
//                     result.add(param.getValue());
//                 }
//             }
//         }
//         return result; // empty list if not found
//     }
// 
// }
// 
// Path: core/src/main/java/au/com/sensis/stubby/model/StubResponse.java
// public class StubResponse extends StubMessage {
// 
//     private Integer status;
// 
//     public StubResponse() { }
//     
//     public StubResponse(StubResponse other) { // copy constructor
//         super(other);
//         this.status = other.status;
//     }
//     
//     public Integer getStatus() {
//         return status;
//     }
// 
//     public void setStatus(Integer status) {
//         this.status = status;
//     }
// 
// }


import au.com.sensis.stubby.model.StubExchange;
import au.com.sensis.stubby.model.StubRequest;
import au.com.sensis.stubby.model.StubResponse;
package au.com.sensis.stubby.js;


public class ScriptWorld { // the world as JavaScript sees it

    private StubRequest request;
// Path: core/src/main/java/au/com/sensis/stubby/model/StubExchange.java
// public class StubExchange {
// 
//     private StubRequest request;
//     private StubResponse response;
//     private Long delay;
//     private String script;
//     
//     public StubExchange() { }
//     
//     public StubExchange(StubExchange other) { // copy constructor
//         this.request = (other.request != null) ? new StubRequest(other.request) : null;
//         this.response = (other.response != null) ? new StubResponse(other.response) : null;
//         this.delay = other.delay;
//         this.script = other.script;
//     }
// 
//     public StubRequest getRequest() {
//         return request;
//     }
// 
//     public void setRequest(StubRequest request) {
//         this.request = request;
//     }
// 
//     public StubResponse getResponse() {
//         return response;
//     }
// 
//     public void setResponse(StubResponse response) {
//         this.response = response;
//     }
// 
//     public Long getDelay() {
//         return delay;
//     }
// 
//     public void setDelay(Long delay) {
//         this.delay = delay;
//     }
// 
//     public String getScript() {
//         return script;
//     }
// 
//     public void setScript(String script) {
//         this.script = script;
//     }
// 
// }
// 
// Path: core/src/main/java/au/com/sensis/stubby/model/StubRequest.java
// public class StubRequest extends StubMessage {
// 
//     private String method;
//     private String path;
//     private List<StubParam> params;
// 
//     public StubRequest() { }
//     
//     public StubRequest(StubRequest other) { // copy constructor
//         super(other);
//         this.method = other.method;
//         this.path = other.path;
//         if (other.params != null) {
//             this.params = new ArrayList<StubParam>();
//             for (StubParam param : other.params) {
//                 this.params.add(new StubParam(param));
//             }
//         }
//     }
//     
//     public String getMethod() {
//         return method;
//     }
// 
//     public void setMethod(String method) {
//         this.method = method;
//     }
// 
//     public String getPath() {
//         return path;
//     }
// 
//     public void setPath(String path) {
//         this.path = path;
//     }
// 
//     public List<StubParam> getParams() {
//         return params;
//     }
// 
//     public void setParams(List<StubParam> params) {
//         this.params = params;
//     }
//     
//     @JsonIgnore
//     public String getParam(String name) { // get first, case sensitive lookup
//         if (params != null) {
//             for (StubParam param : params) {
//                 if (param.getName().equals(name)) {
//                     return param.getValue();
//                 }
//             }
//         }
//         return null; // not found
//     }
// 
//     @JsonIgnore
//     public List<String> getParams(String name) { // get all, case sensitive lookup
//         List<String> result = new ArrayList<String>();
//         if (params != null) {
//             for (StubParam param : params) {
//                 if (param.getName().equals(name)) {
//                     result.add(param.getValue());
//                 }
//             }
//         }
//         return result; // empty list if not found
//     }
// 
// }
// 
// Path: core/src/main/java/au/com/sensis/stubby/model/StubResponse.java
// public class StubResponse extends StubMessage {
// 
//     private Integer status;
// 
//     public StubResponse() { }
//     
//     public StubResponse(StubResponse other) { // copy constructor
//         super(other);
//         this.status = other.status;
//     }
//     
//     public Integer getStatus() {
//         return status;
//     }
// 
//     public void setStatus(Integer status) {
//         this.status = status;
//     }
// 
// }


// Path: core/src/main/java/au/com/sensis/stubby/js/ScriptWorld.java
import au.com.sensis.stubby.model.StubExchange;
import au.com.sensis.stubby.model.StubRequest;
import au.com.sensis.stubby.model.StubResponse;

package au.com.sensis.stubby.js;


public class ScriptWorld { // the world as JavaScript sees it

    private StubRequest request;
    private StubResponse response;