plugin.xml 19.9 KB
Newer Older
S
serge-rider 已提交
1 2 3 4
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>

5 6
    <extension-point id="org.jkiss.dbeaver.dataTransfer" name="%extension-point.org.jkiss.dbeaver.dataTransfer.name" schema="schema/org.jkiss.dbeaver.dataTransfer.exsd"/>

S
serge-rider 已提交
7 8 9 10 11 12 13 14 15 16
    <extension point="org.eclipse.ui.commands">
        <command id="org.jkiss.dbeaver.core.export.data" name="%command.org.jkiss.dbeaver.core.export.data.name" description="%command.org.jkiss.dbeaver.core.export.data.description" categoryId="org.jkiss.dbeaver.core.util"/>
        <command id="org.jkiss.dbeaver.core.import.data" name="%command.org.jkiss.dbeaver.core.import.data.name" description="%command.org.jkiss.dbeaver.core.import.data.description" categoryId="org.jkiss.dbeaver.core.util"/>
    </extension>

    <extension point="org.eclipse.ui.commandImages">
        <image commandId="org.jkiss.dbeaver.core.export.data" icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/sql/table_export.png"/>
        <image commandId="org.jkiss.dbeaver.core.import.data" icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/sql/table_import.png"/>
    </extension>

S
serge-rider 已提交
17 18 19 20 21 22 23 24 25 26 27
<!--
    <extension point="org.eclipse.core.expressions.propertyTesters">
        <propertyTester
                class="org.jkiss.dbeaver.tools.transfer.handlers.DataTransferPropertyTester"
                id="org.jkiss.dbeaver.tools.transfer.handlers.DataTransferPropertyTester"
                namespace="org.jkiss.dbeaver.tools.transfer"
                properties="supportsImportFrom"
                type="java.lang.Object"/>
    </extension>
-->

S
serge-rider 已提交
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
    <extension point="org.eclipse.ui.menus">

        <menuContribution allPopups="false" locationURI="popup:org.eclipse.ui.popup.any?after=export_import">
            <command
                    commandId="org.jkiss.dbeaver.core.export.data"
                    label="%command.org.jkiss.dbeaver.core.export.data.name">
                <visibleWhen checkEnabled="true"/>
            </command>
            <command
                    commandId="org.jkiss.dbeaver.core.import.data"
                    label="%command.org.jkiss.dbeaver.core.import.data.name">
                <visibleWhen checkEnabled="true"/>
            </command>
        </menuContribution>

    </extension>

45 46 47 48 49 50 51 52 53 54 55 56 57 58
    <extension point="org.eclipse.ui.handlers">
        <handler commandId="org.jkiss.dbeaver.core.export.data" class="org.jkiss.dbeaver.tools.transfer.handlers.DataExportHandler">
            <enabledWhen>
                <with variable="selection">
                    <count value="+"/>
                    <iterate operator="and">
                        <adapt type="org.jkiss.dbeaver.model.struct.DBSDataContainer"/>
                    </iterate>
                </with>
            </enabledWhen>
        </handler>
        <handler commandId="org.jkiss.dbeaver.core.import.data" class="org.jkiss.dbeaver.tools.transfer.handlers.DataImportHandler">
            <enabledWhen>
                <with variable="selection">
59
                    <count value="+"/>
60
                    <iterate operator="and">
S
serge-rider 已提交
61 62
                        <or>
                            <adapt type="org.jkiss.dbeaver.model.struct.DBSDataManipulator"/>
63
<!--
S
serge-rider 已提交
64 65 66 67 68 69 70
                            <adapt type="org.eclipse.core.resources.IFile">
                                <or>
                                    <test property="org.eclipse.core.resources.extension" value="csv"/>
                                    <test property="org.eclipse.core.resources.extension" value="tsv"/>
                                    <test property="org.eclipse.core.resources.extension" value="txt"/>
                                </or>
                            </adapt>
71
-->
S
serge-rider 已提交
72
                        </or>
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
                    </iterate>
                </with>
            </enabledWhen>
        </handler>
    </extension>

    <extension point="org.jkiss.dbeaver.dataTransfer">
        <node type="producer"
              id="database_producer"
              class="org.jkiss.dbeaver.tools.transfer.database.DatabaseTransferProducer"
              icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/table.png"
              label="%dataTransfer.producer.database.name"
              description="%dataTransfer.producer.database.description"
              settings="org.jkiss.dbeaver.tools.transfer.database.DatabaseProducerSettings">
            <sourceType type="org.jkiss.dbeaver.model.struct.DBSDataContainer"/>
88 89
            <page id="database_producer_input_objects" class="org.jkiss.dbeaver.tools.transfer.database.page.DatabaseProducerPageInputObjects" producerSelector="true"/>
            <page id="database_producer_extract_settings" class="org.jkiss.dbeaver.tools.transfer.database.page.DatabaseProducerPageExtractSettings"/>
90 91
        </node>

92 93 94 95 96 97 98
        <node type="producer"
              id="stream_producer"
              class="org.jkiss.dbeaver.tools.transfer.stream.StreamTransferProducer"
              icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/file/file.png"
              label="%dataTransfer.producer.stream.name"
              description="%dataTransfer.producer.stream.description"
              settings="org.jkiss.dbeaver.tools.transfer.stream.StreamProducerSettings">
99 100
            <page id="stream_producer_settings" class="org.jkiss.dbeaver.tools.transfer.stream.page.StreamProducerPageSettings"/>
            <page id="stream_producer_preview" class="org.jkiss.dbeaver.tools.transfer.stream.page.StreamProducerPagePreview"/>
101 102 103

            <processor
                    id="stream.csv"
104
                    class="org.jkiss.dbeaver.tools.transfer.stream.importer.DataImporterCSV"
105 106 107
                    description="%dataTransfer.producer.stream.processor.csv.description"
                    icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/csv.png"
                    label="%dataTransfer.producer.stream.processor.csv.name">
108 109
                <propertyGroup label="%dataTransfer.producer.stream.processor.csv.propertyGroup.general.label">
                    <property id="extension" label="%dataTransfer.producer.stream.processor.csv.property.extension.label" defaultValue="csv,tsv,txt"/>
S
serge-rider 已提交
110
                    <property id="encoding" label="%dataTransfer.producer.stream.processor.csv.property.encoding.label" defaultValue="utf-8"/>
111
                    <property id="delimiter" label="%dataTransfer.producer.stream.processor.csv.property.delimiter.name" type="string" description="%dataTransfer.producer.stream.processor.csv.property.delimiter.description" defaultValue="," required="true"/>
112
                    <property id="header" label="%dataTransfer.producer.stream.processor.csv.property.header.name" type="string" description="%dataTransfer.producer.stream.processor.csv.property.header.description" defaultValue="top" required="true" validValues="none,top,both"/>
113
                    <property id="quoteChar" label="%dataTransfer.producer.stream.processor.csv.property.quoteChar.name" type="string" description="%dataTransfer.producer.stream.processor.csv.property.quoteChar.description" defaultValue="&quot;" required="false"/>
114
                    <property id="nullString" label="%dataTransfer.producer.stream.processor.csv.property.nullString.name" type="string" description="%dataTransfer.producer.stream.processor.csv.property.nullString.description" defaultValue="" required="false"/>
115
                    <property id="emptyStringNull" label="%dataTransfer.producer.stream.processor.csv.property.emptyStringNull.name" type="boolean" description="%dataTransfer.producer.stream.processor.csv.property.emptyStringNull.description" defaultValue="" required="false"/>
116 117 118 119
                </propertyGroup>
            </processor>
        </node>

120 121 122 123 124 125 126
        <node type="consumer"
              id="stream_consumer"
              class="org.jkiss.dbeaver.tools.transfer.stream.StreamTransferConsumer"
              icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/file/file.png"
              label="%dataTransfer.consumer.stream.name"
              description="%dataTransfer.consumer.stream.description"
              settings="org.jkiss.dbeaver.tools.transfer.stream.StreamConsumerSettings">
127 128
            <page id="stream_consumer_settings" class="org.jkiss.dbeaver.tools.transfer.stream.page.StreamConsumerPageSettings"/>
            <page id="stream_consumer_output" class="org.jkiss.dbeaver.tools.transfer.stream.page.StreamConsumerPageOutput"/>
129 130 131

            <processor
                    id="stream.xml"
132
                    class="org.jkiss.dbeaver.tools.transfer.stream.exporter.DataExporterXML"
133 134 135 136 137 138 139 140 141
                    description="%dataTransfer.processor.xml.description"
                    icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/xml.png"
                    label="%dataTransfer.processor.xml.name">
                <propertyGroup label="%dataTransfer.processor.xml.propertyGroup.general.label">
                    <property id="extension" label="%dataTransfer.processor.xml.property.extension.label" defaultValue="xml"/>
                </propertyGroup>
            </processor>
            <processor
                    id="stream.dbunit"
142
                    class="org.jkiss.dbeaver.tools.transfer.stream.exporter.DataExporterDbUnit"
143 144 145 146 147 148 149 150 151 152 153 154 155
                    description="%dataTransfer.processor.dbunit.description"
                    icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/xml.png"
                    label="%dataTransfer.processor.dbunit.name">
                <propertyGroup label="%dataTransfer.processor.dbunit.propertyGroup.general.label">
                    <property id="upperCaseTableName" label="%dataTransfer.processor.dbunit.property.uppercase.table.name.label" type="boolean" defaultValue="true"/>
                    <property id="upperCaseColumnNames" label="%dataTransfer.processor.dbunit.property.uppercase.column.names.label" type="boolean" defaultValue="true"/>
                    <property id="extension" label="%dataTransfer.processor.dbunit.property.extension.label" defaultValue="xml"/>
                    <property id="includeNullValues" label="%dataTransfer.processor.dbunit.property.include.null.values.label" type="boolean" defaultValue="true"/>
                    <property id="nullValueString" label="%dataTransfer.processor.dbunit.property.null.value.string.label" defaultValue="[NULL]"/>
                </propertyGroup>
            </processor>
            <processor
                    id="stream.json"
156
                    class="org.jkiss.dbeaver.tools.transfer.stream.exporter.DataExporterJSON"
157 158 159 160 161 162 163 164 165 166 167
                    description="%dataTransfer.processor.json.description"
                    icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/json.png"
                    label="%dataTransfer.processor.json.name">
                <propertyGroup label="%dataTransfer.processor.json.propertyGroup.general.label">
                    <property id="printTableName" label="%dataTransfer.processor.json.property.printTableName.label" type="boolean" defaultValue="true"/>
                    <property id="formatDateISO" label="%dataTransfer.processor.json.property.formatDateISO.label" type="boolean" defaultValue="true"/>
                    <property id="extension" label="%dataTransfer.processor.json.property.extension.label" defaultValue="json"/>
                </propertyGroup>
            </processor>
            <processor
                    id="stream.html"
168
                    class="org.jkiss.dbeaver.tools.transfer.stream.exporter.DataExporterHTML"
169 170
                    description="%dataTransfer.processor.html.description"
                    icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/html.png"
S
Serge Rider 已提交
171 172
                    label="%dataTransfer.processor.html.name"
                    appFileExtension="html"
173 174
                    appName="Web browser"
                    order="20">
175 176 177 178 179 180 181
                <propertyGroup label="%dataTransfer.processor.html.propertyGroup.general.label">
                    <property id="extension" label="%dataTransfer.processor.html.property.extension.label" defaultValue="html"/>
                    <property id="extractImages" label="%dataTransfer.processor.html.property.images.name" type="boolean" description="%dataTransfer.processor.html.property.images.description" defaultValue="true"/>
                </propertyGroup>
            </processor>
            <processor
                    id="stream.csv"
182
                    class="org.jkiss.dbeaver.tools.transfer.stream.exporter.DataExporterCSV"
183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199
                    description="%dataTransfer.processor.csv.description"
                    icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/csv.png"
                    label="%dataTransfer.processor.csv.name">
                <propertyGroup label="%dataTransfer.processor.csv.propertyGroup.general.label">
                    <property id="extension" label="%dataTransfer.processor.csv.property.extension.label" defaultValue="csv"/>
                    <property id="delimiter" label="%dataTransfer.processor.csv.property.delimiter.name" type="string" description="%dataTransfer.processor.csv.property.delimiter.description" defaultValue="," required="true"/>
                    <property id="header" label="%dataTransfer.processor.csv.property.header.name" type="string" description="%dataTransfer.processor.csv.property.header.description" defaultValue="top" required="true" validValues="none,top,bottom,both"/>
                    <property id="escape" label="%dataTransfer.processor.csv.property.escape.name" type="string" description="%dataTransfer.processor.csv.property.escape.description" defaultValue="quotes" required="true" validValues="quotes,escape"/>
                    <property id="quoteChar" label="%dataTransfer.processor.csv.property.quoteChar.name" type="string" description="%dataTransfer.processor.csv.property.quoteChar.description" defaultValue="&quot;" required="false"/>
                    <property id="quoteAlways" label="%dataTransfer.processor.csv.property.quoteAlways.name" type="boolean" description="%dataTransfer.processor.csv.property.quoteAlways.description" defaultValue="false" required="false"/>
                    <property id="quoteNever" label="%dataTransfer.processor.csv.property.quoteNever.name" type="boolean" description="%dataTransfer.processor.csv.property.quoteNever.description" defaultValue="false" required="false"/>
                    <property id="nullString" label="%dataTransfer.processor.csv.property.nullString.name" type="string" description="%dataTransfer.processor.csv.property.nullString.description" defaultValue="" required="false"/>
                    <property id="formatNumbers" label="%dataTransfer.processor.csv.property.formatNumbers.name" type="boolean" description="%dataTransfer.processor.csv.property.formatNumbers.description" defaultValue="false" required="false"/>
                </propertyGroup>
            </processor>
            <processor
                    id="stream.markdown.table"
200
                    class="org.jkiss.dbeaver.tools.transfer.stream.exporter.DataExporterMarkdownTable"
201 202 203 204 205 206 207 208 209 210 211 212 213
                    description="%dataTransfer.processor.markdownTable.description"
                    icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/markdown.png"
                    label="%dataTransfer.processor.markdownTable.name">
                <propertyGroup label="%dataTransfer.processor.markdownTable.propertyGroup.general.label">
                    <property id="extension" label="%dataTransfer.processor.markdownTable.property.extension.label" defaultValue="md"/>
                    <property id="nullString" label="%dataTransfer.processor.markdownTable.property.nullString.name" type="string" description="%dataTransfer.processor.markdownTable.property.nullString.description" defaultValue="" required="false"/>
                    <property id="formatNumbers" label="%dataTransfer.processor.markdownTable.property.formatNumbers.name" type="boolean" description="%dataTransfer.processor.markdownTable.property.formatNumbers.description" defaultValue="false" required="false"/>
                    <property id="showHeaderSeparator" label="%dataTransfer.processor.markdownTable.property.showHeaderSeparator.name" type="boolean" description="%dataTransfer.processor.markdownTable.property.showHeaderSeparator.description" defaultValue="true" required="false"/>
                    <property id="confluenceFormat" label="%dataTransfer.processor.markdownTable.property.confluenceFormat.name" type="boolean" description="%dataTransfer.processor.markdownTable.property.confluenceFormat.description" defaultValue="false" required="false"/>
                </propertyGroup>
            </processor>
            <processor
                    id="stream.sql"
214
                    class="org.jkiss.dbeaver.tools.transfer.stream.exporter.DataExporterSQL"
215 216 217 218 219 220 221 222 223 224 225
                    description="%dataTransfer.processor.sql.description"
                    icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/sql.png"
                    label="%dataTransfer.processor.sql.name">
                <propertyGroup label="%dataTransfer.processor.sql.propertyGroup.general.label">
                    <property id="includeAutoGenerated" label="%dataTransfer.processor.sql.property.includeAutoGenerated.label" description="%dataTransfer.processor.sql.property.includeAutoGenerated.description" type="boolean" defaultValue="false"/>
                    <property id="extension" label="%dataTransfer.processor.sql.property.extension.label" type="string" defaultValue="sql"/>
                    <property id="format" label="%dataTransfer.processor.xml.property.format.label" type="string" defaultValue="native" validValues="ui,edit,native"/>
                    <property id="omitSchema" label="%dataTransfer.processor.sql.property.omitSchema.name" type="boolean" description="%dataTransfer.processor.sql.property.omitSchema.description" required="false" defaultValue="false"/>
                    <property id="rowsInStatement" label="%dataTransfer.processor.sql.property.rowsInStatement.name" type="integer" description="%dataTransfer.processor.sql.property.rowsInStatement.description" defaultValue="10" required="true"/>
                </propertyGroup>
            </processor>
226 227 228 229 230 231 232
            <processor
                    id="stream.txt"
                    class="org.jkiss.dbeaver.tools.transfer.stream.exporter.DataExporterTXT"
                    description="%dataTransfer.processor.txt.description"
                    icon="platform:/plugin/org.jkiss.dbeaver.model/icons/types/text.png"
                    label="%dataTransfer.processor.txt.name">
                <propertyGroup label="%dataTransfer.processor.txt.propertyGroup.general.label">
233
                    <property id="extension" label="%dataTransfer.processor.txt.property.extension.label" type="string" defaultValue="txt"/>
234 235 236 237 238 239
                    <property id="maxColumnLength" label="%dataTransfer.processor.txt.property.maxColumnLength.label" defaultValue="100"/>
                    <property id="showNulls" label="%dataTransfer.processor.txt.property.showNulls.label" type="boolean" defaultValue="false"/>
                    <property id="delimLeading" label="%dataTransfer.processor.txt.property.delimLeading.label" type="boolean" defaultValue="true"/>
                    <property id="delimTrailing" label="%dataTransfer.processor.txt.property.delimTrailing.label" type="boolean" defaultValue="true"/>
                </propertyGroup>
            </processor>
240 241 242 243 244 245 246 247 248 249
        </node>

        <node type="consumer"
              id="database_consumer"
              class="org.jkiss.dbeaver.tools.transfer.database.DatabaseTransferConsumer"
              icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/table.png"
              label="%dataTransfer.consumer.database.name"
              description="%dataTransfer.consumer.database.description"
              settings="org.jkiss.dbeaver.tools.transfer.database.DatabaseConsumerSettings">
            <sourceType type="org.jkiss.dbeaver.model.struct.DBSDataContainer"/>
250 251
            <page id="database_consumer_mappings" class="org.jkiss.dbeaver.tools.transfer.database.page.DatabaseConsumerPageMapping" producerType="database_producer"/>
            <page id="database_consumer_settings" class="org.jkiss.dbeaver.tools.transfer.database.page.DatabaseConsumerPageLoadSettings"/>
252 253 254
        </node>
    </extension>

S
serge-rider 已提交
255 256

</plugin>