1 package com.jsql.model.injection.method; 2 3 import com.jsql.model.InjectionModel; 4 5 import java.util.AbstractMap.SimpleEntry; 6 import java.util.Arrays; 7 import java.util.List; 8 9 public class MediatorMethod { 10 11 private final AbstractMethodInjection query; 12 private final AbstractMethodInjection request; 13 private final AbstractMethodInjection header; 14 15 private final List<AbstractMethodInjection> methods; 16 17 public MediatorMethod(InjectionModel injectionModel) { 18 19 this.query = new AbstractMethodInjection(injectionModel) { 20 @Override 21 public boolean isCheckingAllParam() { 22 return this.injectionModel.getMediatorUtils().getPreferencesUtil().isCheckingAllURLParam(); 23 } 24 @Override 25 public String getParamsAsString() { 26 return this.injectionModel.getMediatorUtils().getParameterUtil().getQueryStringFromEntries(); 27 } 28 @Override 29 public List<SimpleEntry<String, String>> getParams() { 30 return this.injectionModel.getMediatorUtils().getParameterUtil().getListQueryString(); 31 } 32 @Override 33 public String name() { 34 return "Query"; 35 } 36 }; 37 38 this.request = new AbstractMethodInjection(injectionModel) { 39 @Override 40 public boolean isCheckingAllParam() { 41 return this.injectionModel.getMediatorUtils().getPreferencesUtil().isCheckingAllRequestParam(); 42 } 43 @Override 44 public String getParamsAsString() { 45 return this.injectionModel.getMediatorUtils().getParameterUtil().getRequestFromEntries(); 46 } 47 @Override 48 public List<SimpleEntry<String, String>> getParams() { 49 return this.injectionModel.getMediatorUtils().getParameterUtil().getListRequest(); 50 } 51 @Override 52 public String name() { 53 return "Request"; 54 } 55 }; 56 57 this.header = new AbstractMethodInjection(injectionModel) { 58 @Override 59 public boolean isCheckingAllParam() { 60 return this.injectionModel.getMediatorUtils().getPreferencesUtil().isCheckingAllHeaderParam(); 61 } 62 @Override 63 public String getParamsAsString() { 64 return this.injectionModel.getMediatorUtils().getParameterUtil().getHeaderFromEntries(); 65 } 66 @Override 67 public List<SimpleEntry<String, String>> getParams() { 68 return this.injectionModel.getMediatorUtils().getParameterUtil().getListHeader(); 69 } 70 @Override 71 public String name() { 72 return "Header"; 73 } 74 }; 75 76 this.methods = Arrays.asList(this.query, this.request, this.header); 77 } 78 79 public AbstractMethodInjection getQuery() { 80 return this.query; 81 } 82 83 public AbstractMethodInjection getRequest() { 84 return this.request; 85 } 86 87 public AbstractMethodInjection getHeader() { 88 return this.header; 89 } 90 91 public List<AbstractMethodInjection> getMethods() { 92 return this.methods; 93 } 94 }