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 => Object#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 unless !block_given? }))
    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))) unless !block_given? }))
    return self
  end
  raise ArgumentError, "Invalid arguments when calling query_context(#{factory})"
end