Class FormatCodeBlocks

java.lang.Object
no.sikt.graphitron.generators.codebuilding.FormatCodeBlocks

public class FormatCodeBlocks extends Object
Class containing various helper methods for constructing code with javapoet.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    addStringIfNotEmpty(String target, String addition)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    applyGlobalTransforms(String recordName, no.sikt.graphitron.javapoet.TypeName recordTypeName, TransformScope scope)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    applyTransform(String recordName, no.sikt.graphitron.javapoet.TypeName recordTypeName, Method transform)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    argumentPresenceLookup(String path, boolean atResolver)
     
    static no.sikt.graphitron.javapoet.CodeBlock
     
    static no.sikt.graphitron.javapoet.CodeBlock
    asCast(no.sikt.graphitron.javapoet.TypeName type, String variable)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    asCast(no.sikt.graphitron.javapoet.TypeName type, no.sikt.graphitron.javapoet.CodeBlock code)
     
    static no.sikt.graphitron.javapoet.CodeBlock
     
    static no.sikt.graphitron.javapoet.CodeBlock
    asMethodCall(String source, String method)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    asMethodCall(no.sikt.graphitron.javapoet.TypeName source, String method)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
     
    static no.sikt.graphitron.javapoet.CodeBlock
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    countFunction(String queryLocation, String queryMethodName, no.sikt.graphitron.javapoet.CodeBlocks inputList, boolean isService)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    createNodeIdBlock(NodeConfiguration nodeConfiguration, String targetAlias)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    createNodeIdBlockForRecord(NodeConfiguration nodeConfiguration, String recordVariableName)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    declareRecord(String name, RecordObjectSpecification<?> input, boolean isIterable, boolean createsDataFetchers)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    defaultValue(String tableName, String fieldName)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    defaultValue(no.sikt.graphitron.javapoet.CodeBlock field)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    extractKeyAsTableRecord(String variableName, no.sikt.graphitron.javapoet.TypeName recordClass)
    Returns a CodeBlock that extracts the primary key from a TableRecord and maps it into a new record of the same type.
    static no.sikt.graphitron.javapoet.CodeBlock
     
    static no.sikt.graphitron.javapoet.CodeBlock
    fetchMapping(boolean iterable)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
     
    static no.sikt.graphitron.javapoet.CodeBlock
     
    static no.sikt.graphitron.javapoet.CodeBlock
     
    static no.sikt.graphitron.javapoet.CodeBlock
    getPrimaryKeyFieldsWithTableAliasBlock(String targetAlias, no.sikt.graphitron.javapoet.CodeBlock sortOrder)
     
    static no.sikt.graphitron.javapoet.ClassName
    getQueryClassName(String queryLocation)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    getValue(String container, MethodMapping mapping)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    hasNodeIdOrIdsBlock(no.sikt.graphitron.javapoet.CodeBlock idOrRecordVariable, NodeConfiguration nodeConfiguration, String targetAlias, boolean isMultiple)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    hasNodeIdOrIdsBlock(no.sikt.graphitron.javapoet.CodeBlock idOrRecordVariable, NodeConfiguration nodeConfiguration, String targetAlias, List<String> overrideKeyCols, boolean isMultiple)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    indentIfMultiline(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    inline(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    inResolverKeysBlock(String resolverKeyParamName, String targetTableJavaName)
    Returns condition for filtering on resolver key, using the table's primary key.
    static no.sikt.graphitron.javapoet.CodeBlock
    inResolverKeysBlock(String resolverKeyParamName, FetchContext context)
    Returns condition for filtering on resolver key.
    static no.sikt.graphitron.javapoet.CodeBlock
    invokeExternalMethod(no.sikt.graphitron.javapoet.CodeBlock source, String methodName, no.sikt.graphitron.javapoet.CodeBlock parameters)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    keyAsTableRecordWithQueryHelper(org.jooq.Key<?> key, String tableName, String aliasVariableName)
    Returns a CodeBlock that selects key fields as a row and converts fetched records into TableRecords via QueryHelper.intoTableRecord(U, java.util.List<org.jooq.TableField<T, ?>>).
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    listedNullCheck(String variable, no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    listOf(String variable)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    listOf(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    listOfIf(no.sikt.graphitron.javapoet.CodeBlock code, boolean condition)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    makeEnumMapBlock(String inputVariable, no.sikt.graphitron.javapoet.CodeBlock valueLists)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    makeEnumMapBlock(no.sikt.graphitron.javapoet.CodeBlock inputVariable, no.sikt.graphitron.javapoet.CodeBlock valueLists)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    mapEntry(String key, no.sikt.graphitron.javapoet.CodeBlock value)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
     
    static no.sikt.graphitron.javapoet.CodeBlock
    mapOf(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    mapOfEntries(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
     
    static no.sikt.graphitron.javapoet.CodeBlock
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    nullIfNullElse(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    nullIfNullElseThis(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    ofTernary(no.sikt.graphitron.javapoet.CodeBlock ifExpr, no.sikt.graphitron.javapoet.CodeBlock thenExpr, no.sikt.graphitron.javapoet.CodeBlock elseExpr)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    queryFunction(String queryLocation, String queryMethodName, no.sikt.graphitron.javapoet.CodeBlocks inputList, boolean hasKeyValues, boolean usesKeyValues, boolean isService)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    recordTransformPart(String transformerName, String varName, String typeName, boolean isJava, boolean isInput)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    Returns code for selecting resolver key and converting it into a table record.
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    returnWrap(String variable)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    returnWrap(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    selectionSetLookup(String path, boolean atResolver, boolean useArguments)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    setOf(String variable)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    setOf(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    setValue(String container, MethodMapping mapping, no.sikt.graphitron.javapoet.CodeBlock value)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    setValue(String container, MethodMapping mapping, no.sikt.graphitron.javapoet.CodeBlock value, boolean isDataFetcherKey)
     
    static no.sikt.graphitron.javapoet.CodeBlock
     
    static no.sikt.graphitron.javapoet.CodeBlock
    tableFieldCodeBlock(String targetTable, String column)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    tableFieldCodeBlock(no.sikt.graphitron.javapoet.CodeBlock targetTable, String column)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    tableFieldsBlock(no.sikt.graphitron.javapoet.CodeBlock tableRef, List<String> fieldJavaNames)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    tableFieldsWithStaticTableInstanceBlock(String tableJavaName, List<String> fieldJavaNames)
     
    static no.sikt.graphitron.javapoet.CodeBlock
    toGraphEnumConverter(String enumType, no.sikt.graphitron.javapoet.CodeBlock field, boolean toRecord, ProcessedSchema schema)
     
    static no.sikt.graphitron.javapoet.CodeBlock
     
    static no.sikt.graphitron.javapoet.CodeBlock
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    val(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    wrapCoalesce(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    wrapFor(String variable, no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    wrapForIndexed(String variable, no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    wrapNotNull(String valueToCheck, no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    wrapNotNull(no.sikt.graphitron.javapoet.CodeBlock valueToCheck, no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    wrapRow(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    wrapRowOfMap(no.sikt.graphitron.javapoet.CodeBlock code)
     
    static @NotNull no.sikt.graphitron.javapoet.CodeBlock
    wrapSelectIfRequested(String path, no.sikt.graphitron.javapoet.CodeBlock code)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • FormatCodeBlocks

      public FormatCodeBlocks()
  • Method Details

    • declareRecord

      public static no.sikt.graphitron.javapoet.CodeBlock declareRecord(String name, RecordObjectSpecification<?> input, boolean isIterable, boolean createsDataFetchers)
      Parameters:
      name - Name of a field that should be declared as a record. This will be the name of the variable.
      input - Input type that should be declared as a record.
      isIterable - Is this record wrapped in a list?
      createsDataFetchers - Is this declaration to be used in a resolver?
      Returns:
      CodeBlock that declares a new record variable and that attaches context configuration if needed.
    • recordTransformPart

      public static no.sikt.graphitron.javapoet.CodeBlock recordTransformPart(String transformerName, String varName, String typeName, boolean isJava, boolean isInput)
    • listOf

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock listOf()
      Returns:
      CodeBlock that creates an empty List.
    • listOf

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock listOf(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the supplied CodeBlock in a List.
    • listOf

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock listOf(String variable)
      Returns:
      CodeBlock that wraps the supplied variable name in a List.
    • listOfIf

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock listOfIf(no.sikt.graphitron.javapoet.CodeBlock code, boolean condition)
      Returns:
      CodeBlock that wraps the provided CodeBlock in a Java list provided the condition is true.
    • setOf

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock setOf()
      Returns:
      CodeBlock that creates an empty Set.
    • setOf

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock setOf(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the supplied CodeBlock in a Set.
    • setOf

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock setOf(String variable)
      Returns:
      CodeBlock that wraps the supplied variable name in a Set.
    • mapOf

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock mapOf()
      Returns:
      CodeBlock that creates an empty Map.
    • mapOf

      public static no.sikt.graphitron.javapoet.CodeBlock mapOf(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the supplied CodeBlock in a Map.
    • mapOfEntries

      public static no.sikt.graphitron.javapoet.CodeBlock mapOfEntries(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the supplied CodeBlock in a Map using ofEntries. Use this instead of mapOf(CodeBlock) when the map may have more than 10 entries.
    • mapEntry

      public static no.sikt.graphitron.javapoet.CodeBlock mapEntry(String key, no.sikt.graphitron.javapoet.CodeBlock value)
      Returns:
      CodeBlock that wraps the supplied key string and value CodeBlocks in a Map.Entry.
    • asMethodCall

      public static no.sikt.graphitron.javapoet.CodeBlock asMethodCall(String method)
      Returns:
      CodeBlock that wraps this method name in a method call format.
    • asMethodCall

      public static no.sikt.graphitron.javapoet.CodeBlock asMethodCall(String source, String method)
      Returns:
      CodeBlock that wraps this method name in a method call format after the specified source.
    • asMethodCall

      public static no.sikt.graphitron.javapoet.CodeBlock asMethodCall(no.sikt.graphitron.javapoet.TypeName source, String method)
      Returns:
      CodeBlock that wraps this method name in a static method call format after the specified source.
    • asCast

      public static no.sikt.graphitron.javapoet.CodeBlock asCast(no.sikt.graphitron.javapoet.TypeName type, String variable)
      Returns:
      CodeBlock that wraps this variable in a Java cast.
    • asCast

      public static no.sikt.graphitron.javapoet.CodeBlock asCast(no.sikt.graphitron.javapoet.TypeName type, no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps this code in a Java cast.
    • collectToList

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock collectToList()
      Returns:
      CodeBlock that adds a collect to List call to be used on a Stream.
    • findFirst

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock findFirst()
      Returns:
      CodeBlock that adds a findFirst call to be used on a collection.
    • nullIfNullElse

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock nullIfNullElse(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock name in a simple null check.
    • nullIfNullElseThis

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock nullIfNullElseThis(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock name in a simple null check.
    • listedNullCheck

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock listedNullCheck(String variable, no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock name in a mapping null check.
    • addStringIfNotEmpty

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock addStringIfNotEmpty(String target, String addition)
      Returns:
      CodeBlock that adds something to a String if it is not empty.
    • selectionSetLookup

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock selectionSetLookup(String path, boolean atResolver, boolean useArguments)
      Returns:
      CodeBlock that checks whether a path is in use.
    • argumentPresenceLookup

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock argumentPresenceLookup(String path, boolean atResolver)
      Returns:
      CodeBlock that checks whether a field is present in the ArgumentPresence tree. The path may contain slashes for nested non-record wrapper types (e.g. "inner/postalCode"), in which case intermediate segments are navigated via .child() calls.
    • setValue

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock setValue(String container, MethodMapping mapping, no.sikt.graphitron.javapoet.CodeBlock value, boolean isDataFetcherKey)
      Returns:
      CodeBlock that sets a value through a mapping.
    • setValue

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock setValue(String container, MethodMapping mapping, no.sikt.graphitron.javapoet.CodeBlock value)
      Returns:
      CodeBlock that sets a value through a mapping.
    • getValue

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock getValue(String container, MethodMapping mapping)
      Returns:
      CodeBlock that gets a value through a mapping.
    • newDataFetcher

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock newDataFetcher()
      Returns:
      CodeBlock that creates a data fetcher object.
    • newServiceDataFetcherWithTransform

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock newServiceDataFetcherWithTransform()
      Returns:
      CodeBlock that creates a service data fetcher through a transform object.
    • declareTransform

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock declareTransform()
      Returns:
      CodeBlock that declares a resolver transformer.
    • continueCheck

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock continueCheck(String value)
      Returns:
      CodeBlock does a null check on the variable and runs continue if it is.
    • countFunction

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock countFunction(String queryLocation, String queryMethodName, no.sikt.graphitron.javapoet.CodeBlocks inputList, boolean isService)
      Returns:
      CodeBlock consisting of a function for a count DB call.
    • getQueryClassName

      public static no.sikt.graphitron.javapoet.ClassName getQueryClassName(String queryLocation)
    • queryFunction

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock queryFunction(String queryLocation, String queryMethodName, no.sikt.graphitron.javapoet.CodeBlocks inputList, boolean hasKeyValues, boolean usesKeyValues, boolean isService)
      Returns:
      CodeBlock consisting of a function for a generic DB call.
    • invokeExternalMethod

      public static no.sikt.graphitron.javapoet.CodeBlock invokeExternalMethod(no.sikt.graphitron.javapoet.CodeBlock source, String methodName, no.sikt.graphitron.javapoet.CodeBlock parameters)
    • wrapNotNull

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock wrapNotNull(String valueToCheck, no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock in an if not null check.
    • wrapNotNull

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock wrapNotNull(no.sikt.graphitron.javapoet.CodeBlock valueToCheck, no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock in an if not null check.
    • wrapFor

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock wrapFor(String variable, no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock in a for loop.
    • wrapForIndexed

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock wrapForIndexed(String variable, no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock in an indexed for loop.
    • wrapRow

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock wrapRow(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock in a jOOQ row.
    • wrapRowOfMap

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock wrapRowOfMap(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock in a jOOQ row.
    • wrapCoalesce

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock wrapCoalesce(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock in a jOOQ coalesce.
    • wrapSelectIfRequested

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock wrapSelectIfRequested(String path, no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock in a call to SelectionSet#ifRequested.
    • inline

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock inline(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock in a jOOQ inline.
    • val

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock val(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that wraps the provided CodeBlock in a jOOQ val.
    • defaultValue

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock defaultValue(no.sikt.graphitron.javapoet.CodeBlock field)
    • defaultValue

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock defaultValue(String tableName, String fieldName)
    • tableFieldCodeBlock

      public static no.sikt.graphitron.javapoet.CodeBlock tableFieldCodeBlock(String targetTable, String column)
    • tableFieldCodeBlock

      public static no.sikt.graphitron.javapoet.CodeBlock tableFieldCodeBlock(no.sikt.graphitron.javapoet.CodeBlock targetTable, String column)
    • indentIfMultiline

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock indentIfMultiline(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      Add appropriate indentation if this code has multiple lines.
    • makeEnumMapBlock

      public static no.sikt.graphitron.javapoet.CodeBlock makeEnumMapBlock(no.sikt.graphitron.javapoet.CodeBlock inputVariable, no.sikt.graphitron.javapoet.CodeBlock valueLists)
      Returns:
      CodeBlock that sends this variable through an enum mapping.
    • makeEnumMapBlock

      public static no.sikt.graphitron.javapoet.CodeBlock makeEnumMapBlock(String inputVariable, no.sikt.graphitron.javapoet.CodeBlock valueLists)
      Returns:
      CodeBlock that sends this variable through an enum mapping.
    • toJOOQEnumConverter

      public static no.sikt.graphitron.javapoet.CodeBlock toJOOQEnumConverter(String enumType, ProcessedSchema schema)
      Returns:
      Code block containing the enum conversion method call with anonymous function declarations.
    • arrayToListConverter

      public static no.sikt.graphitron.javapoet.CodeBlock arrayToListConverter()
      Returns:
      CodeBlock that converts a SQL array field to a Java List using jOOQ's convertFrom with null-safety.
    • toGraphEnumConverter

      public static no.sikt.graphitron.javapoet.CodeBlock toGraphEnumConverter(String enumType, no.sikt.graphitron.javapoet.CodeBlock field, boolean toRecord, ProcessedSchema schema)
      Returns:
      Code block containing the enum conversion method call.
    • trueCondition

      public static no.sikt.graphitron.javapoet.CodeBlock trueCondition()
      Returns:
      Code block of a true jOOQ condition.
    • falseCondition

      public static no.sikt.graphitron.javapoet.CodeBlock falseCondition()
      Returns:
      Code block of a false jOOQ condition.
    • noCondition

      public static no.sikt.graphitron.javapoet.CodeBlock noCondition()
      Returns:
      Code block of a jOOQ "no condition".
    • applyGlobalTransforms

      public static no.sikt.graphitron.javapoet.CodeBlock applyGlobalTransforms(String recordName, no.sikt.graphitron.javapoet.TypeName recordTypeName, TransformScope scope)
      Parameters:
      recordName - Name of the record to transform.
      scope - The scope of transforms that should be applied. Currently only TransformScope.ALL_MUTATIONS is supported.
      Returns:
      CodeBlock where all defined global transforms are applied to the record.
    • applyTransform

      public static no.sikt.graphitron.javapoet.CodeBlock applyTransform(String recordName, no.sikt.graphitron.javapoet.TypeName recordTypeName, Method transform)
      Parameters:
      recordName - Name of the record to transform.
      transform - The method that should transform the record.
      Returns:
      CodeBlock where the transform is applied to the record.
    • fetchMapping

      public static no.sikt.graphitron.javapoet.CodeBlock fetchMapping(boolean iterable)
    • returnWrap

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock returnWrap(String variable)
      Returns:
      CodeBlock that returns the provided name.
    • returnWrap

      @NotNull public static @NotNull no.sikt.graphitron.javapoet.CodeBlock returnWrap(no.sikt.graphitron.javapoet.CodeBlock code)
      Returns:
      CodeBlock that returns the provided code.
    • inResolverKeysBlock

      public static no.sikt.graphitron.javapoet.CodeBlock inResolverKeysBlock(String resolverKeyParamName, FetchContext context)
      Returns condition for filtering on resolver key.
    • inResolverKeysBlock

      public static no.sikt.graphitron.javapoet.CodeBlock inResolverKeysBlock(String resolverKeyParamName, String targetTableJavaName)
      Returns condition for filtering on resolver key, using the table's primary key.
    • resolverKeyAsTableRecord

      public static no.sikt.graphitron.javapoet.CodeBlock resolverKeyAsTableRecord(FetchContext context)
      Returns code for selecting resolver key and converting it into a table record.
    • keyAsTableRecordWithQueryHelper

      public static no.sikt.graphitron.javapoet.CodeBlock keyAsTableRecordWithQueryHelper(org.jooq.Key<?> key, String tableName, String aliasVariableName)
      Returns a CodeBlock that selects key fields as a row and converts fetched records into TableRecords via QueryHelper.intoTableRecord(U, java.util.List<org.jooq.TableField<T, ?>>).
    • commaSeparatedResolverKeyFields

      public static no.sikt.graphitron.javapoet.CodeBlock commaSeparatedResolverKeyFields(FetchContext context)
    • getPrimaryKeyFieldsWithTableAliasBlock

      public static no.sikt.graphitron.javapoet.CodeBlock getPrimaryKeyFieldsWithTableAliasBlock(String targetAlias)
    • getPrimaryKeyFieldsWithTableAliasBlock

      public static no.sikt.graphitron.javapoet.CodeBlock getPrimaryKeyFieldsWithTableAliasBlock(String targetAlias, String direction)
    • getPrimaryKeyFieldsWithTableAliasBlock

      public static no.sikt.graphitron.javapoet.CodeBlock getPrimaryKeyFieldsWithTableAliasBlock(String targetAlias, no.sikt.graphitron.javapoet.CodeBlock sortOrder)
    • ofTernary

      public static no.sikt.graphitron.javapoet.CodeBlock ofTernary(no.sikt.graphitron.javapoet.CodeBlock ifExpr, no.sikt.graphitron.javapoet.CodeBlock thenExpr, no.sikt.graphitron.javapoet.CodeBlock elseExpr)
    • staticTableInstanceBlock

      public static no.sikt.graphitron.javapoet.CodeBlock staticTableInstanceBlock(String tableName)
    • createNodeIdBlock

      public static no.sikt.graphitron.javapoet.CodeBlock createNodeIdBlock(NodeConfiguration nodeConfiguration, String targetAlias)
    • createNodeIdBlockForRecord

      public static no.sikt.graphitron.javapoet.CodeBlock createNodeIdBlockForRecord(NodeConfiguration nodeConfiguration, String recordVariableName)
    • hasNodeIdOrIdsBlock

      public static no.sikt.graphitron.javapoet.CodeBlock hasNodeIdOrIdsBlock(no.sikt.graphitron.javapoet.CodeBlock idOrRecordVariable, NodeConfiguration nodeConfiguration, String targetAlias, boolean isMultiple)
    • hasNodeIdOrIdsBlock

      public static no.sikt.graphitron.javapoet.CodeBlock hasNodeIdOrIdsBlock(no.sikt.graphitron.javapoet.CodeBlock idOrRecordVariable, NodeConfiguration nodeConfiguration, String targetAlias, List<String> overrideKeyCols, boolean isMultiple)
    • tableFieldsWithStaticTableInstanceBlock

      public static no.sikt.graphitron.javapoet.CodeBlock tableFieldsWithStaticTableInstanceBlock(String tableJavaName, List<String> fieldJavaNames)
      Returns:
      CodeBlock with comma-separated table fields using a static table instance resolved from the table name. Example: Film.FILM.FILM_ID, Film.FILM.LANGUAGE_ID
    • tableFieldsBlock

      public static no.sikt.graphitron.javapoet.CodeBlock tableFieldsBlock(no.sikt.graphitron.javapoet.CodeBlock tableRef, List<String> fieldJavaNames)
      Parameters:
      tableRef - The CodeBlock with the table reference. For example a table alias variable, or a static table instance block.
      Returns:
      CodeBlock with comma-separated table fields from the given table reference code block.
    • extractKeyAsTableRecord

      public static no.sikt.graphitron.javapoet.CodeBlock extractKeyAsTableRecord(String variableName, no.sikt.graphitron.javapoet.TypeName recordClass)
      Returns a CodeBlock that extracts the primary key from a TableRecord and maps it into a new record of the same type. The resulting record will only have its key fields populated.

      Example output: myTableRecord.key().into(MyTableRecord.class)

      Parameters:
      variableName - variable name of the table record to extract the key from.
      recordClass - the record class to map the key into. This should match the record class of the variable.
      Returns:
      CodeBlock that converts a table record into a key-only record of the same type.