Package org.timepedia.exporter.rebind

Source Code of org.timepedia.exporter.rebind.JExportableArrayType

package org.timepedia.exporter.rebind;

import com.google.gwt.core.ext.typeinfo.JArrayType;
import com.google.gwt.core.ext.typeinfo.JType;

import org.timepedia.exporter.client.ExporterUtil;

/**
*
*/
public class JExportableArrayType extends JExportableClassType
    implements JExportableType {

  public JExportableArrayType(ExportableTypeOracle exportableTypeOracle,
      JArrayType array) {
    super(exportableTypeOracle, array);
    this.exportableTypeOracle = exportableTypeOracle;
    this.array = array;
  }

  private ExportableTypeOracle exportableTypeOracle;

  private JArrayType array;

  public boolean needsExport() {
    return true;
  }

  public String getQualifiedSourceName() {
    return array.getQualifiedSourceName();
  }

  @Override
  public String getWrapperFunc() {
    JType type = array.getComponentType();
    return "@" + ExporterUtil.class.getName() + "::wrap(["
        + type.getJNISignature() + ")";
  }
 
  public JExportableType getComponentType() {
    return exportableTypeOracle
        .findExportableType(array.getComponentType().getQualifiedSourceName());
  }
}
TOP

Related Classes of org.timepedia.exporter.rebind.JExportableArrayType

TOP
Copyright © 2018 www.massapi.com. 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.