Class InterfaceCreator

  • All Implemented Interfaces:
    Creator<Type>

    public class InterfaceCreator
    extends Object
    This creates an interface object.

    The interface object has fields that might reference other types that should still be created. It might also implement some interfaces that should be created.

    Author:
    Phillip Kruger (phillip.kruger@redhat.com)
    • Method Detail

      • addFields

        protected void addFields​(Type interfaceType,
                                 org.jboss.jandex.ClassInfo classInfo,
                                 Reference reference)
      • getDirectiveLocation

        public String getDirectiveLocation()
      • canAddInterfaceIntoScheme

        public static boolean canAddInterfaceIntoScheme​(String interfaceFullName)
        Check if interface can be added into GraphQL schema, eg. ignore java interfaces (like Serializable)
        Parameters:
        interfaceFullName - full name of the interface, including package name
        Returns:
        true if interface can be added
      • setDirectives

        public void setDirectives​(Directives directives)
      • addOperations

        protected void addOperations​(Type type,
                                     org.jboss.jandex.ClassInfo classInfo)
      • toOperations

        protected Map<String,​Operation> toOperations​(Map<org.jboss.jandex.DotName,​List<org.jboss.jandex.MethodParameterInfo>> sourceFields,
                                                           Type type,
                                                           org.jboss.jandex.ClassInfo classInfo)