Class: VertxWebGraphql::GraphQLHandler

Inherits:
Object
  • Object
show all
Defined in:
/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web-graphql/graph_ql_handler.rb

Overview

A VertxWeb::Route handler for GraphQL requests.

Constant Summary

@@j_api_type =
Object.new

Class Method Summary (collapse)

Instance Method Summary (collapse)

Class Method Details

+ (Boolean) accept?(obj)

Returns:

  • (Boolean)

19
20
21
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web-graphql/graph_ql_handler.rb', line 19

def @@j_api_type.accept?(obj)
  obj.class == GraphQLHandler
end

+ (Object) j_api_type


28
29
30
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web-graphql/graph_ql_handler.rb', line 28

def self.j_api_type
  @@j_api_type
end

+ (Object) j_class


31
32
33
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web-graphql/graph_ql_handler.rb', line 31

def self.j_class
  Java::IoVertxExtWebHandlerGraphql::GraphQLHandler.java_class
end

+ (Object) unwrap(obj)


25
26
27
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web-graphql/graph_ql_handler.rb', line 25

def @@j_api_type.unwrap(obj)
  obj.j_del
end

+ (Object) wrap(obj)


22
23
24
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web-graphql/graph_ql_handler.rb', line 22

def @@j_api_type.wrap(obj)
  GraphQLHandler.new(obj)
end

Instance Method Details

- (self) graphi_ql_request_headers(factory = nil) { ... }

Customize the HTTP headers to add to GraphQL requests sent by the GraphiQL user interface. The result will be applied on top of the fixed set of headers specified in Hash#get_headers.

This can be useful if, for example, the server is protected by authentication.

Yields:

Returns:

  • (self)

Raises:

  • (ArgumentError)

60
61
62
63
64
65
66
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web-graphql/graph_ql_handler.rb', line 60

def graphi_ql_request_headers(factory=nil)
  if block_given? && factory == nil
    @j_del.java_method(:graphiQLRequestHeaders, [Java::JavaUtilFunction::Function.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxWeb::RoutingContext)).j_del }))
    return self
  end
  raise ArgumentError, "Invalid arguments when calling graphi_ql_request_headers(#{factory})"
end

- (void) handle(event = nil)

This method returns an undefined value.

Something has happened, so handle it.

Parameters:

Raises:

  • (ArgumentError)

37
38
39
40
41
42
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web-graphql/graph_ql_handler.rb', line 37

def handle(event=nil)
  if event.class.method_defined?(:j_del) && !block_given?
    return @j_del.java_method(:handle, [Java::IoVertxExtWeb::RoutingContext.java_class]).call(event.j_del)
  end
  raise ArgumentError, "Invalid arguments when calling handle(#{event})"
end

- (self) query_context(factory = nil) { ... }

Customize the query context object. The provided factory method will be invoked for each incoming GraphQL request.

Yields:

Returns:

  • (self)

Raises:

  • (ArgumentError)

47
48
49
50
51
52
53
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web-graphql/graph_ql_handler.rb', line 47

def query_context(factory=nil)
  if block_given? && factory == nil
    @j_del.java_method(:queryContext, [Java::JavaUtilFunction::Function.java_class]).call((Proc.new { |event| ::Vertx::Util::Utils.to_object(yield(::Vertx::Util::Utils.safe_create(event,::VertxWeb::RoutingContext))) }))
    return self
  end
  raise ArgumentError, "Invalid arguments when calling query_context(#{factory})"
end