Advertisement
Guest User

Untitled

a guest
Jan 24th, 2020
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. package main.resources.domain.templates;
  2.  
  3. import main.resources.model.BusinessRule;
  4. import main.resources.model.Operator;
  5. import main.resources.model.Values;
  6.  
  7. public class TemplateTriggerACMPOracle extends TriggerTemplate {
  8.  
  9. @Override
  10. public String generateCode(BusinessRule br) {
  11. String valueOne = br.getValueList().get(0);
  12. String code = super.generateCode(br);
  13.  
  14. code += "\nIF l_oper in ('INS', 'UPD')"
  15. + "\nTHEN"
  16. + "\nl_passed := :new." + br.getAttributeNameOne() + " " + br.getOperator().getValue() + " " + valueOne + ";"
  17. + "\nIF NOT l_passed"
  18. + "\nTHEN"
  19. + "\nl_error_stack := l_error_stack || '" + "ERROR MESSAGE" + "';"
  20. + "\nEND IF;"
  21. + "\nEND IF;"
  22. + "\nEND;"
  23. + "\nIF l_error_stack is not null"
  24. + "\nTHEN"
  25. + "\nraise_application_error(-20800, l_error_stack);"
  26. + "\nEND IF;"
  27. + "\nEND " + br.getConstraintName() + ";";
  28.  
  29. return code;
  30. }
  31.  
  32. public static void main(String args[]) {
  33. Values testval = new Values();
  34. testval.addValue("1");
  35. testval.addValue("10");
  36. TriggerTemplate test = new TemplateTriggerACMPOracle();
  37.  
  38.  
  39. BusinessRule testbr = new BusinessRule.Builder("BRG_TEST_TRIGGER_ACMP")
  40. .firstComparableTable("product")
  41. .comparableValues(testval)
  42. .firstComparableAttribute("prijs")
  43. .usingOperator(new Operator("GREATER THAN", ">"))
  44. .usingTemplate(test)
  45. .build();
  46.  
  47. System.out.println(test.generateCode(testbr));
  48. }
  49.  
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement