/** * Create an instance of {@link KeywordsType } * */ public KeywordsType createKeywordsType() { return new KeywordsType(); }
@Override public Pair<List<LanguageString>, CodeType> apply( KeywordsType u ) { Pair<List<LanguageString>, CodeType> p = new Pair<List<LanguageString>, CodeType>(); p.first = map( u.getKeyword(), LANG_LANG_MAPPER ); if ( u.getType() != null ) { p.second = CODE_TYPE_MAPPER.apply( u.getType() ); } return p; } };
/** * write a list of keywords in csw 2.0.2 style. * * @param writer * @param keywords * @throws XMLStreamException */ private void exportKeywords( XMLStreamWriter writer, List<KeywordsType> keywords ) throws XMLStreamException { if ( !keywords.isEmpty() ) { for ( KeywordsType kwt : keywords ) { if ( kwt != null ) { writer.writeStartElement( "http://www.opengis.net/ows", "Keywords" ); List<LanguageStringType> keyword = kwt.getKeyword(); for ( LanguageStringType lst : keyword ) { if ( lst != null ) { writeElement( writer, "http://www.opengis.net/ows", "Keyword", lst.getValue() ); } // -> keyword [1, n] } // -> type [0,1] // exportCodeType( writer, kwt.getType() ); writer.writeEndElement();// WCS_100_NS, "keywords" ); } } } }
private Pair<List<LanguageString>, CodeType> fromJaxb( final KeywordsType jaxbEl ) { final CodeType type = jaxbEl.getType() == null ? null : new CodeType( jaxbEl.getType().getValue(), jaxbEl.getType().getCodeSpace() ); final List<LanguageString> languageStrings = fromJaxb( jaxbEl.getKeyword() ); return new Pair<List<LanguageString>, CodeType>( languageStrings, type ); } }
private static void exportKeyWords( XMLStreamWriter writer, List<KeywordsType> keywords, String owsNS ) throws XMLStreamException { writer.writeStartElement( owsNS, "Keywords" ); for ( KeywordsType kwt : keywords ) { if ( kwt != null ) { List<LanguageStringType> keyword = kwt.getKeyword(); // must actually be >0 if ( keyword != null && !keyword.isEmpty() ) { for ( LanguageStringType lst : keyword ) { exportLanguageStringType( writer, lst, "Keyword", owsNS ); } } CodeType codeType = kwt.getType(); exportCodeType( writer, codeType, "Type", owsNS ); } } writer.writeEndElement(); // Keywords }
/** * write a list of keywords in wcs 1.0.0 style. * * @param writer * @param keywords * @throws XMLStreamException */ public static void exportKeywords( XMLStreamWriter writer, List<KeywordsType> keywords ) throws XMLStreamException { if ( !keywords.isEmpty() ) { for ( KeywordsType kwt : keywords ) { if ( kwt != null ) { writer.writeStartElement( WCS_100_NS, "keywords" ); writer.writeDefaultNamespace( WCS_100_NS ); List<LanguageStringType> keyword = kwt.getKeyword(); for ( LanguageStringType lst : keyword ) { exportKeyword( writer, lst ); // -> keyword [1, n] } // -> type [0,1] exportCodeType( writer, kwt.getType() ); writer.writeEndElement();// WCS_100_NS, "keywords" ); } } } }