Sha256: 52a69da0513a3b62787aa67a3c0cb64d0f5599aa2f7bdcb3afc2a92eafc885a5
Contents?: true
Size: 788 Bytes
Versions: 12
Compression:
Stored size: 788 Bytes
Contents
module GraphitiGraphQL module Federation class FederatedResource attr_reader :type_name, :relationships def initialize(type_name) @type_name = type_name @relationships = {} end def add_relationship( kind, name, local_resource_class, foreign_key, &blk ) @relationships[name] = FederatedRelationship .new(kind, name, local_resource_class, foreign_key) if blk @relationships[name].instance_eval(&blk) end end def polymorphic? @type_name.is_a?(Hash) end def klass_name if polymorphic? "I#{@relationships.keys[0].to_s.camelize}" else @type_name end end end end end
Version data entries
12 entries across 12 versions & 1 rubygems