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

net.java.ao.atlassian.AtlassianIndexNameConverter Maven / Gradle / Ivy

Go to download

This is the full Active Objects library, if you don't know which one to use, you probably want this one.

There is a newer version: 6.1.1
Show newest version
package net.java.ao.atlassian;

import net.java.ao.schema.DefaultIndexNameConverter;
import net.java.ao.schema.IndexNameConverter;

import java.util.Objects;

import static net.java.ao.Common.prefix;
import static net.java.ao.Common.shorten;

public final class AtlassianIndexNameConverter implements IndexNameConverter {
    private final IndexNameConverter delegate;

    public AtlassianIndexNameConverter() {
        this(new DefaultIndexNameConverter());
    }

    public AtlassianIndexNameConverter(IndexNameConverter delegate) {
        this.delegate = Objects.requireNonNull(delegate,"delegate can't be null");
    }

    @Override
    public String getName(String tableName, String columnName) {
        return shorten(delegate.getName(tableName, columnName), ConverterUtils.MAX_LENGTH);
    }

    @Override
    public String getPrefix(String tableName) {
        return prefix(delegate.getPrefix(tableName), ConverterUtils.MAX_LENGTH);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy