All Downloads are FREE. Search and download functionalities are using the official Maven repository.

unquietcode.tools.flapi.builder.Descriptor.S5ad6542c4eac3cb8ac8b9145eb2ba662 Maven / Gradle / Ivy

The newest version!

package unquietcode.tools.flapi.builder.Descriptor;

import javax.annotation.Generated;
import unquietcode.tools.flapi.Descriptor;
import unquietcode.tools.flapi.generator.naming.NameGenerator;
import unquietcode.tools.flapi.runtime.ChainInfo;
import unquietcode.tools.flapi.runtime.MethodInfo;
import unquietcode.tools.flapi.runtime.Tracked;
import unquietcode.tools.flapi.runtime.TransitionType;


/**
 * This class was generated using Flapi, the fluent API generator for Java.
 * Modifications to this file will be lost upon regeneration.
 * You have been warned!
 * 
 * Visit https://github.com/UnquietCode/Flapi for more information.
 * 
 * 
 * Generated on February 29, 2016 19:16:13 PST using version 1.0
 * @see unquietcode.tools.flapi.builder.Descriptor.DescriptorHelper
 */
@Generated(value = "unquietcode.tools.flapi", date = "2016-02-29T19:16:13-08:00", comments = "generated using Flapi, the fluent API generator for Java, version 1.0")
public interface S5ad6542c4eac3cb8ac8b9145eb2ba662 <_ReturnType> {
    /**
     * add a new method which proceeds to an existing block
     */
    @MethodInfo(type = TransitionType.Recursive, chainInfo = {
        @ChainInfo(type = unquietcode.tools.flapi.builder.Method.MethodBuilder.Head.class, position = 2)
    })
    unquietcode.tools.flapi.builder.Method.MethodBuilder.Head> addBlockReference(String blockName, String methodSignature);

    /**
     * Adds an enum selector, by passing in an enum class.
     */
    @MethodInfo(type = TransitionType.Recursive, chainInfo = {
        @ChainInfo(type = unquietcode.tools.flapi.builder.Method.MethodBuilder.Head.class, position = 2)
    })
    unquietcode.tools.flapi.builder.Method.MethodBuilder.Head> addEnumSelector(Class clazz, String methodSignature);

    /**
     * Add a new method to the top level descriptor block.
     */
    @MethodInfo(type = TransitionType.Recursive, chainInfo = {
        @ChainInfo(type = unquietcode.tools.flapi.builder.Method.MethodBuilder.Head.class, position = 1)
    })
    unquietcode.tools.flapi.builder.Method.MethodBuilder.Head> addMethod(String methodSignature);

    /**
     * mix in the contents of an annotated block helper
     */
    @MethodInfo(type = TransitionType.Recursive)
    unquietcode.tools.flapi.builder.Descriptor.DescriptorBuilder.Head<_ReturnType> addMixin(Class helper);

    /**
     * mix in the contents of another block by name
     */
    @MethodInfo(type = TransitionType.Recursive)
    unquietcode.tools.flapi.builder.Descriptor.DescriptorBuilder.Head<_ReturnType> addMixin(String blockName);

    @MethodInfo(type = TransitionType.Terminal)
    Descriptor build();

    /**
     * Disable the use of timestamps in the generated source code.
     * This will eliminate changes between successive executions so long
     * as the same version of the tool is used each time.
     */
    @MethodInfo(type = TransitionType.Lateral)
    Sb0e2f0348404a452e22437325678ed32 <_ReturnType> disableTimestamps();

    /**
     * Allow class names to be condensed, at the cost of no longer being
     * humanly readable. If your generated class names are too long to be
     * compiled, you will have to use this.
     */
    @MethodInfo(type = TransitionType.Lateral)
    Seba4a023c965bb4f29980736f0dcdf5c<_ReturnType> enableCondensedClassNames();

    /**
     * set the name of the top level descriptor
     */
    @MethodInfo(type = TransitionType.Lateral)
    @Tracked(atLeast = 1, key = "setDescriptorName_1String_descriptorNa")
    Se153669037788ef7340bccc68174b58b<_ReturnType> setDescriptorName(String descriptorName);

    /**
     * set the root package name to use for the generated classes
     */
    @MethodInfo(type = TransitionType.Lateral)
    S5ad577f3623b927c3a62eb2cef6d4b7d<_ReturnType> setPackage(String packageName);

    /**
     * set the return type for the top level descriptor (default is void)
     */
    @MethodInfo(type = TransitionType.Lateral)
    Se1088abfe5dbd2cf69532ca7353016fa<_ReturnType> setReturnType(Class returnType);

    /**
     * set the return type for the top level descriptor (default is void)
     */
    @MethodInfo(type = TransitionType.Lateral)
    Se1088abfe5dbd2cf69532ca7353016fa<_ReturnType> setReturnType(String returnType);

    /**
     * set the name of the generator's starting method (default is 'create')
     */
    @MethodInfo(type = TransitionType.Lateral)
    S40f8fe3d8f6ae031de1f9dcb52223524 <_ReturnType> setStartingMethodName(String methodName);

    /**
     * Starts a new block.
     */
    @MethodInfo(type = TransitionType.Recursive, chainInfo = {
        @ChainInfo(type = unquietcode.tools.flapi.builder.Method.MethodBuilder.Head.class, position = 2),
        @ChainInfo(type = unquietcode.tools.flapi.builder.Block.BlockBuilder.Head.class, position = 3)
    })
    unquietcode.tools.flapi.builder.Method.MethodBuilder.Head>> startBlock(String blockName, String methodSignature);

    /**
     * Starts a new anonymous block.
     */
    @MethodInfo(type = TransitionType.Recursive, chainInfo = {
        @ChainInfo(type = unquietcode.tools.flapi.builder.Method.MethodBuilder.Head.class, position = 1),
        @ChainInfo(type = unquietcode.tools.flapi.builder.Block.BlockBuilder.Head.class, position = 2)
    })
    unquietcode.tools.flapi.builder.Method.MethodBuilder.Head>> startBlock(String methodSignature);

    /**
     * Provide a custom NameGenerator.
     */
    @MethodInfo(type = TransitionType.Lateral)
    Seba4a023c965bb4f29980736f0dcdf5c<_ReturnType> useCustomNameGenerator(NameGenerator generator);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy