/* * JBoss, Home of Professional Open Source. * * See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing. * * See the AUTHORS.txt file distributed with this work for a full listing of individual contributors. */ package org.teiid.designer.modelgenerator.xml.modelextension; import org.eclipse.emf.ecore.EcorePackage; import org.teiid.designer.metamodels.core.extension.ExtensionFactory; import org.teiid.designer.metamodels.core.extension.XAttribute; import org.teiid.designer.metamodels.core.extension.XClass; import org.teiid.designer.modelgenerator.xml.modelextension.impl.XMLRequestResponseExtensionManagerImpl; /** * @since 8.0 */ public class XMLHTTPExtensionManager extends XMLRequestResponseExtensionManagerImpl { public XMLHTTPExtensionManager() { super(); } static final String MODEL_FILE_NAME = "XMLHTTPConnectorExtensions.xmi"; //$NON-NLS-1$ static final String PACKAGE_NAME = "XMLHTTPExtension"; //$NON-NLS-1$ static final String PACKAGE_PREFIX = "xmlhttp"; //$NON-NLS-1$ static final String PACKAGE_NS_URI = "http://www.metamatrix.com/metamodels/XMLHTTP"; //$NON-NLS-1$ static final String XML_HTTP_TABLE = "XML HTTP Table"; //$NON-NLS-1$ static final String XML_HTTP_COLUMN = "XML HTTP Column"; //$NON-NLS-1$ static final String TABLE_SERVLET_CALL_PATH = "ServletCallPathforURL"; //$NON-NLS-1$ private XAttribute servletCallPathforURLTableAttribute; @Override public String getModelFileName() { return MODEL_FILE_NAME; } @Override public String getPackageName() { return PACKAGE_NAME; } @Override public String getPackagePrefix() { return PACKAGE_PREFIX; } @Override public String getPackageNsUri() { return PACKAGE_NS_URI; } @Override public String getTableName() { return XML_HTTP_TABLE; } @Override public String getColumnName() { return XML_HTTP_COLUMN; } @Override public void createTableExtensions( ExtensionFactory xFactory, XClass table ) { super.createTableExtensions(xFactory, table); servletCallPathforURLTableAttribute = xFactory.createXAttribute(); servletCallPathforURLTableAttribute.setName(XMLHTTPExtensionManager.TABLE_SERVLET_CALL_PATH); servletCallPathforURLTableAttribute.setEType(EcorePackage.eINSTANCE.getEString()); table.getEStructuralFeatures().add(servletCallPathforURLTableAttribute); } @Override public void createColumnExtensions( ExtensionFactory xFactory, XClass column ) { super.createColumnExtensions(xFactory, column); } @Override public void assignAttribute( XAttribute attribute ) { super.assignAttribute(attribute); if (attribute.getName().equals(TABLE_SERVLET_CALL_PATH)) { servletCallPathforURLTableAttribute = attribute; } } }