Search in sources :

Example 1 with BaseClient

use of com.spectralogic.ds3autogen.python.model.client.BaseClient in project ds3_autogen by SpectraLogic.

the class PythonCodeGenerator_Test method toClientCommands_EmptyList_Test.

@Test
public void toClientCommands_EmptyList_Test() {
    final ImmutableList<BaseClient> result = toClientCommands(ImmutableList.of(), new Ds3DocSpecEmptyImpl());
    assertThat(result.size(), is(0));
}
Also used : Ds3DocSpecEmptyImpl(com.spectralogic.ds3autogen.docspec.Ds3DocSpecEmptyImpl) BaseClient(com.spectralogic.ds3autogen.python.model.client.BaseClient) Test(org.junit.Test)

Example 2 with BaseClient

use of com.spectralogic.ds3autogen.python.model.client.BaseClient in project ds3_autogen by SpectraLogic.

the class PythonCodeGenerator method generateCommands.

/**
     * Generates the ds3.py python code which includes: request handlers, response handlers,
     * response payload descriptors, and the client
     */
@Override
public void generateCommands(final ImmutableList<Ds3Request> ds3Requests, final ImmutableMap<String, Ds3Type> typeMap, final Ds3DocSpec docSpec) throws IOException, TemplateException {
    if (isEmpty(ds3Requests)) {
        LOG.info("There are no requests to generate");
        return;
    }
    final ImmutableList<BaseRequest> baseRequests = toRequestModelList(ds3Requests, docSpec);
    final ImmutableList<BaseResponse> baseResponses = toResponseModelList(ds3Requests);
    final ImmutableList<TypeDescriptor> baseTypes = toTypeDescriptorList(typeMap);
    final ImmutableList<BaseClient> clientCommands = toClientCommands(ds3Requests, docSpec);
    final CommandSet commandSet = new CommandSet(baseRequests, baseResponses, baseTypes, clientCommands);
    final Template tmpl = getCommandTemplate(config);
    final Path path = toBaseProjectPath("ds3.py");
    LOG.info("Getting OutputStream for file: " + path.toString());
    try (final OutputStream outStream = fileUtils.getOutputFile(path);
        final Writer writer = new OutputStreamWriter(outStream)) {
        tmpl.process(commandSet, writer);
    }
}
Also used : Path(java.nio.file.Path) OutputStream(java.io.OutputStream) BaseClient(com.spectralogic.ds3autogen.python.model.client.BaseClient) BaseResponse(com.spectralogic.ds3autogen.python.model.response.BaseResponse) TypeDescriptor(com.spectralogic.ds3autogen.python.model.type.TypeDescriptor) BaseRequest(com.spectralogic.ds3autogen.python.model.request.BaseRequest) CommandSet(com.spectralogic.ds3autogen.python.model.commands.CommandSet) OutputStreamWriter(java.io.OutputStreamWriter) OutputStreamWriter(java.io.OutputStreamWriter) Writer(java.io.Writer)

Example 3 with BaseClient

use of com.spectralogic.ds3autogen.python.model.client.BaseClient in project ds3_autogen by SpectraLogic.

the class PythonCodeGenerator_Test method toClientCommand_Test.

@Test
public void toClientCommand_Test() {
    final BaseClient result = toClientCommand(createDs3RequestTestData("com.test.GetCompleteMultiPartUploadRequest", Classification.spectrads3), getTestDocSpec());
    assertThat(result.getCommandName(), is("get_complete_multi_part_upload"));
    assertThat(result.getResponseName(), is("GetCompleteMultiPartUploadResponse"));
}
Also used : BaseClient(com.spectralogic.ds3autogen.python.model.client.BaseClient) Test(org.junit.Test)

Example 4 with BaseClient

use of com.spectralogic.ds3autogen.python.model.client.BaseClient in project ds3_autogen by SpectraLogic.

the class PythonCodeGenerator_Test method toClientCommands_NullList_Test.

@Test
public void toClientCommands_NullList_Test() {
    final ImmutableList<BaseClient> result = toClientCommands(null, new Ds3DocSpecEmptyImpl());
    assertThat(result.size(), is(0));
}
Also used : Ds3DocSpecEmptyImpl(com.spectralogic.ds3autogen.docspec.Ds3DocSpecEmptyImpl) BaseClient(com.spectralogic.ds3autogen.python.model.client.BaseClient) Test(org.junit.Test)

Aggregations

BaseClient (com.spectralogic.ds3autogen.python.model.client.BaseClient)4 Test (org.junit.Test)3 Ds3DocSpecEmptyImpl (com.spectralogic.ds3autogen.docspec.Ds3DocSpecEmptyImpl)2 CommandSet (com.spectralogic.ds3autogen.python.model.commands.CommandSet)1 BaseRequest (com.spectralogic.ds3autogen.python.model.request.BaseRequest)1 BaseResponse (com.spectralogic.ds3autogen.python.model.response.BaseResponse)1 TypeDescriptor (com.spectralogic.ds3autogen.python.model.type.TypeDescriptor)1 OutputStream (java.io.OutputStream)1 OutputStreamWriter (java.io.OutputStreamWriter)1 Writer (java.io.Writer)1 Path (java.nio.file.Path)1