Class AbstractServiceClassNameBuilder<T>
java.lang.Object
com.fathzer.plugin.loader.commons.AbstractServiceClassNameBuilder<T>
- Type Parameters:
T- The context's class
- All Implemented Interfaces:
ClassNameBuilder<T>
- Direct Known Subclasses:
ServiceClassNameBuilder,ServiceClassNameBuilder
public abstract class AbstractServiceClassNameBuilder<T>
extends Object
implements ClassNameBuilder<T>
An abstract
ClassNameBuilder that retrieves the class names in the same way as ServiceLoader.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected BufferedReaderGets a BufferedReader on an inputStream.protected StringgetServiceFilePath(Class<?> serviceClass) Gets the service definition file path for a service class.toClassNames(Stream<String> lines) Converts the lines of a service definition file to aSetof implementation class names.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.fathzer.plugin.loader.ClassNameBuilder
get
-
Constructor Details
-
AbstractServiceClassNameBuilder
public AbstractServiceClassNameBuilder()
-
-
Method Details
-
getServiceFilePath
Gets the service definition file path for a service class.- Parameters:
serviceClass- The service to search- Returns:
- a String
-
getBufferedReader
Gets a BufferedReader on an inputStream.- Parameters:
in- The inputStream;- Returns:
- a BufferedReader.
-
toClassNames
Converts the lines of a service definition file to aSetof implementation class names.- Parameters:
lines- The lines of a service definition file.- Returns:
- a Set.
-