( , ) - . Guice, ,
( , , )
" ". , ( "" ).
@Provides
@Named("FileEndpoint")
private Endpoint fromFileEndpoint() {
FileEndpoint fileEndpoint = getContext().getEndpoint("file:" + somFolder, FileEndpoint.class);
fileEndpoint.setMove(".done");
fileEndpoint.setRecursive(true);
fileEndpoint.setDoneFileName(FtpRoutes.DONE_FILE_NAME);
...
return fileEndpoint;
}
RouteBuilder :
@Inject
private MyRoutes(@Named("FileEndpoint") final Endpoint fileEndpoint) {
this.fileEndpoint = fileEndpoint;
}
@Override
public void configure() throws Exception {
from(fileEndpoint)....
}
, , FileEndpoint, "direct: something". "Jukito" , Guice Mockito. :
@RunWith(JukitoRunner.class)
public class OcsFtpTest extends CamelTestSupport {
public static class TestModule extends JukitoModule {
@Override
protected void configureTest() {
bind(CamelContext.class).to(DefaultCamelContext.class).in(TestSingleton.class);
}
@Provides
@Named("FileEndpoint")
private Endpoint testEndpoint() {
DirectEndpoint fileEndpoint = getContext().getEndpoint("direct:a", DirectEndpoint.class);
return fileEndpoint;
}
}
@Inject
private MyRoutes testObject;
@Test
....
}
"testObject" . , , / Apis, ( !).