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

com.atom.annotation.api.ApiImplContext Maven / Gradle / Ivy

There is a newer version: 5.0.0
Show newest version
package com.atom.annotation.api;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;

import java.util.Collection;

public interface ApiImplContext {

     Collection> getApis(@NonNull Class requiredType);

     Collection> getApis(@NonNull Class requiredType, String name, boolean useRegex);

     Collection> getApis(@NonNull Class requiredType, @NonNull ApiCLassFilter filter);

     Class getApi(@NonNull Class requiredType);

     Class getApi(@NonNull Class requiredType, long version);

     Class getApi(@NonNull Class requiredType, String name, long version, boolean useRegex);

     void setImpl(@NonNull Class requiredType, String name, long version, T entity);

     T getImpl(@NonNull Class requiredType);

     T getImpl(@NonNull Class requiredType, String name);

     T getImpl(@NonNull Class requiredType, long version);

     T getImpl(@NonNull Class requiredType, String name, long version, boolean useRegex);

     T hasApi(@NonNull Class requiredType, String name, long version);

     T hasApi(@NonNull Class requiredType);

     T newApi(@NonNull Class api);

     T newApi(@NonNull Class api, String name);

     T newApi(@NonNull Class api, String name, long version);

    @NonNull
    String cachePut(@NonNull Object data);

    @Nullable
    Object cacheGet(@NonNull String key);

    @Nullable
    Object cacheRemove(@NonNull String key);

    void setImplEnabled(@NonNull String name, Boolean enable);

    Boolean getImplEnabled(@NonNull String name);

    void setApiImplHandler(ApiImplHandler apiImplHandler);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy