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

org.dominokit.jacksonapt.processor.BeanIdentityInfo Maven / Gradle / Ivy

There is a newer version: 1.20
Show newest version
package org.dominokit.jacksonapt.processor;

import javax.lang.model.type.TypeMirror;
import java.util.Optional;

public class BeanIdentityInfo {

    private final String propertyName;

    private final boolean idABeanProperty;

    private final boolean alwaysAsId;

    private final TypeMirror generator;

    private final Optional scope;

    private final Optional type;

    BeanIdentityInfo(String propertyName, boolean alwaysAsId, TypeMirror generator, Optional scope ) {
        this.propertyName = propertyName;
        this.alwaysAsId = alwaysAsId;
        this.generator = generator;
        this.scope = scope;
        this.idABeanProperty = true;
        this.type = Optional.empty();
    }

    BeanIdentityInfo( String propertyName, boolean alwaysAsId, TypeMirror generator, Optional scope,
                      Optional type ) {
        this.propertyName = propertyName;
        this.alwaysAsId = alwaysAsId;
        this.generator = generator;
        this.scope = scope;
        this.idABeanProperty = false;
        this.type = type;
    }

    public String getPropertyName() {
        return propertyName;
    }

    public boolean isIdABeanProperty() {
        return idABeanProperty;
    }

    public boolean isAlwaysAsId() {
        return alwaysAsId;
    }

    public TypeMirror getGenerator() {
        return generator;
    }

    public Optional getScope() {
        return scope;
    }

    public Optional getType() {
        return type;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy