Advertisement
Guest User

Untitled

a guest
Aug 24th, 2019
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.45 KB | None | 0 0
  1. package com.qvision.screenplay.abilities;
  2.  
  3. import com.qvision.screenplay.exceptions.ActorCannotQueryDatabaseException;
  4. import net.serenitybdd.screenplay.Ability;
  5. import net.serenitybdd.screenplay.Actor;
  6. import net.serenitybdd.screenplay.RefersToActor;
  7.  
  8. public class QueryDatabase implements Ability, RefersToActor {
  9. private final String urlDatabase;
  10. private final String username;
  11. private final String password;
  12. private Actor actor;
  13.  
  14. private QueryDatabase(String urlDatabase, String username, String password) {
  15. this.urlDatabase = urlDatabase;
  16. this.username = username;
  17. this.password = password;
  18. }
  19.  
  20. public static QueryDatabase configDatabase(String urlDatabase, String username, String password) {
  21. return new QueryDatabase(urlDatabase, username, password);
  22. }
  23.  
  24. public static QueryDatabase as(Actor actor) {
  25. if (actor.abilityTo(QueryDatabase.class) == null) {
  26. throw new ActorCannotQueryDatabaseException(actor.getName());
  27. }
  28. return actor.abilityTo(QueryDatabase.class).asActor(actor);
  29. }
  30.  
  31. @Override
  32. public <T extends Ability> T asActor(Actor actor) {
  33. this.actor = actor;
  34. return (T) this;
  35. }
  36.  
  37. public void createConnection() {
  38. /*
  39. Aca ira una magia que veremos en otro ejercicio para extraer información de la base de datos.
  40. */
  41. }
  42.  
  43. @Override
  44. public String toString() {
  45. return "query the database";
  46. }
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement