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

com.github.zhengframework.test.WithZhengApplication Maven / Gradle / Ivy

There is a newer version: 1.8.0
Show newest version
package com.github.zhengframework.test;

import com.github.zhengframework.configuration.Configuration;
import com.github.zhengframework.core.ModuleProvider;
import com.google.inject.Module;
import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;

@Inherited
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface WithZhengApplication {

  String configFile() default "";

  Class configurationClass() default NotDefineConfiguration.class;

  String[] arguments() default {};

  Class[] moduleClass() default {};

  Class[] excludeModuleClass() default {};

  Class[] excludeModuleProviderClass() default {};

  boolean autoLoadModule() default true;

  class NotDefineConfiguration implements Configuration {

    @Override
    public Optional get(String key) {
      return Optional.empty();
    }

    @Override
    public Set keySet() {
      return null;
    }

    @Override
    public Map asMap() {
      return null;
    }

    @Override
    public Configuration prefix(String prefix) {
      return null;
    }

    @Override
    public List prefixList(String prefix) {
      return null;
    }

    @Override
    public Set prefixSet(String prefix) {
      return null;
    }

    @Override
    public Map prefixMap(String prefix) {
      return null;
    }
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy