Package org.zanata.rest.dto.resource

Examples of org.zanata.rest.dto.resource.TranslationsResource


        getZero();

        // Push a document and its translations
        createResourceWithContentUsingPut();

        TranslationsResource entity = new TranslationsResource();
        TextFlowTarget target = new TextFlowTarget();
        target.setResId("tf1");
        target.setContents("hello world");
        target.setState(ContentState.Approved);
        target.setTranslator(new Person("root@localhost", "Admin user"));
        entity.getTextFlowTargets().add(target);

        // Future Date for the PO Revision Date Header
        Calendar poRevDate = Calendar.getInstance();
        poRevDate.add(Calendar.YEAR, 1); // 1 year in the future
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mmZ");

        // Add initial headers to the translations
        PoTargetHeader transHeader = new PoTargetHeader();
        transHeader.getEntries().add(
                new HeaderEntry(HeaderFields.KEY_LastTranslator,
                        "Test User <test@zanata.org>"));
        transHeader.getEntries().add(
                new HeaderEntry(HeaderFields.KEY_PoRevisionDate, dateFormat
                        .format(poRevDate.getTime()))); // Date in the future
        entity.getExtensions(true).add(transHeader);

        // Push the translations
        ClientResponse<String> putResponse =
                transResource.putTranslations("my.txt", de_DE, entity,
                        new StringSet("gettext"));
        assertThat(putResponse.getResponseStatus(), is(Status.OK));
        getEm().flush();
        getEm().clear();

        // Get the translations with PO headers
        ClientResponse<TranslationsResource> transResponse =
                transResource.getTranslations("my.txt", de_DE, new StringSet(
                        "gettext"));
        TranslationsResource translations = transResponse.getEntity();

        // Make sure the headers are populated
        PoTargetHeader header =
                translations.getExtensions(true).findByType(
                        PoTargetHeader.class);
        assertThat(header, notNullValue());
        assertThat(header.getEntries().size(), greaterThan(0));

        // Make sure the header values are the same as the ones pushed with the
View Full Code Here


        getZero();

        // Push a document and its translations
        createResourceWithContentUsingPut();

        TranslationsResource entity = new TranslationsResource();
        TextFlowTarget target = new TextFlowTarget();
        target.setResId("tf1");
        target.setContents("hello world");
        target.setState(ContentState.Approved);
        target.setTranslator(new Person("root@localhost", "Admin user"));
        entity.getTextFlowTargets().add(target);

        ClientResponse<String> putResponse =
                transResource.putTranslations("my.txt", de_DE, entity, null);
        assertThat(putResponse.getResponseStatus(), is(Status.OK));

        // Get the translations with PO headers
        ClientResponse<TranslationsResource> response =
                transResource.getTranslations("my.txt", de_DE, new StringSet(
                        "gettext"));

        TranslationsResource translations = response.getEntity();
        assertThat(translations.getTextFlowTargets().size(), greaterThan(0));

        // Now translate and push them again
        for (TextFlowTarget tft : translations.getTextFlowTargets()) {
            tft.setContents("Translated");
            tft.setState(ContentState.Approved);
        }

        putResponse =
                transResource.putTranslations("my.txt", de_DE, translations,
                        null);
        assertThat(putResponse.getStatus(),
                is(Response.Status.OK.getStatusCode()));

        // Fetch the translations again
        response =
                transResource.getTranslations("my.txt", de_DE, new StringSet(
                        "gettext"));

        translations = response.getEntity();
        assertThat(translations.getTextFlowTargets().size(), greaterThan(0));

        // Make sure the headers are now populated
        PoTargetHeader header =
                translations.getExtensions(true).findByType(
                        PoTargetHeader.class);
        assertThat(header, notNullValue());
        assertThat(header.getEntries().size(), greaterThan(0));

        // Make sure the headers have the correct value
View Full Code Here

        // Fetch the translations again
        ClientResponse<TranslationsResource> response =
                transResource.getTranslations("my.txt", de_de, new StringSet(
                        "gettext"));

        TranslationsResource translations = response.getEntity();
        assertThat(translations.getTextFlowTargets().size(), greaterThan(0));

        // Make sure the headers are present
        PoTargetHeader header =
                translations.getExtensions(true).findByType(
                        PoTargetHeader.class);
        assertThat(header, notNullValue());
        assertThat(header.getEntries().size(), greaterThan(0));

        // Make sure the headers have the correct value
View Full Code Here

    private void expectTarget(boolean checkRevs, String id, LocaleId locale,
            TranslationsResource expectedDoc) {
        ClientResponse<TranslationsResource> response =
                transResource.getTranslations(id, locale, extGettextComment);
        assertThat(response.getStatus(), is(200));
        TranslationsResource actualDoc = response.getEntity();
        actualDoc.getLinks(true).clear();
        actualDoc.getExtensions(true);

        for (TextFlowTarget tft : expectedDoc.getTextFlowTargets()) {
            tft.getExtensions(true);
        }

        for (TextFlowTarget tft : actualDoc.getTextFlowTargets()) {
            tft.getExtensions(true);
        }

        expectedDoc.getLinks(true).clear();
        expectedDoc.getExtensions(true);
        if (!checkRevs) {
            ResourceTestUtil.clearRevs(actualDoc);
            ResourceTestUtil.clearRevs(expectedDoc);
        }

        // Clear Po Headers since Zanata will generate custom ones
        ResourceTestUtil.clearPoTargetHeaders(actualDoc, expectedDoc);

        assertThat(actualDoc.toString(),
                Matchers.equalTo(expectedDoc.toString()));
    }
View Full Code Here

                    new TextFlow("tf1", LocaleId.EN_US, "hello world"));
        return resource;
    }

    private TranslationsResource createTargetDoc() {
        TranslationsResource trans = new TranslationsResource();
        TextFlowTarget target = new TextFlowTarget();
        target.setContents("hei verden");
        target.setDescription("translation of hello world");
        target.setResId("tf1");
        target.setState(ContentState.Approved);
        Person person = new Person("email@example.com", "Translator Name");
        target.setTranslator(person);
        trans.getTextFlowTargets().add(target);
        return trans;
    }
View Full Code Here

        return doc;
    }

    private TranslationsResource putPoTarget1() {
        String id = "foo.pot";
        TranslationsResource tr = new TranslationsResource();
        TextFlowTarget target =
                newTextFlowTarget("FOOD", "Sauerkraut", "translator comment");
        tr.getTextFlowTargets().add(target);

        PoTargetHeader targetHeader = new PoTargetHeader();
        targetHeader.setComment("target comment");
        List<HeaderEntry> entries = targetHeader.getEntries();
        entries.add(new HeaderEntry("Project-Id-Version", "ja"));
        tr.getExtensions(true).add(targetHeader);

        transResource.putTranslations(id, DE, tr, extGettextComment);

        return tr;
    }
View Full Code Here

        return doc;
    }

    protected TranslationsResource putTarget1() {
        String id = DOC1_NAME;
        TranslationsResource tr = new TranslationsResource();
        TextFlowTarget target = newTextFlowTarget("FOOD", "Sauerkraut", null);
        tr.getTextFlowTargets().add(target);
        transResource.putTranslations(id, DE, tr, extGettextComment);
        return tr;
    }
View Full Code Here

        return doc;
    }

    protected TranslationsResource putTarget1a() {
        String id = DOC1_NAME;
        TranslationsResource tr = new TranslationsResource();
        TextFlowTarget target =
                newTextFlowTarget("HELLO", "Bonjour le Monde",
                        "bon jour comment");
        tr.getTextFlowTargets().add(target);
        transResource.putTranslations(id, FR, tr, extGettextComment);
        return tr;
    }
View Full Code Here

        return doc;
    }

    protected TranslationsResource putTarget2() {
        String id = DOC2_NAME;
        TranslationsResource tr = new TranslationsResource();
        TextFlowTarget target =
                newTextFlowTarget("HELLO", "Bonjour le Monde", null);
        tr.getTextFlowTargets().add(target);
        transResource.putTranslations(id, FR, tr, extGettextComment);
        return tr;
    }
View Full Code Here

                            + "\"email\":\"root@localhost\","
                            + "\"name\":\"Admin user\"},"
                            + "\"content\":\"hello world\"}]}";

            messageBody = new ByteArrayInputStream(testStr.getBytes("UTF-8"));
            TranslationsResource unmarshall =
                    restUtils.unmarshall(TranslationsResource.class,
                            messageBody, MediaType.APPLICATION_JSON_TYPE, null);
            log.info("got:" + unmarshall.toString());
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        } finally {
            if (messageBody != null) {
                try {
View Full Code Here

TOP

Related Classes of org.zanata.rest.dto.resource.TranslationsResource

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.