jdk.nashorn.api.scripting.JSObject.getSlot()方法的使用及代码示例

x33g5p2x  于2022-01-22 转载在 其他  
字(7.7k)|赞(0)|评价(0)|浏览(97)

本文整理了Java中jdk.nashorn.api.scripting.JSObject.getSlot()方法的一些代码示例,展示了JSObject.getSlot()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。JSObject.getSlot()方法的具体详情如下:
包路径:jdk.nashorn.api.scripting.JSObject
类名称:JSObject
方法名:getSlot

JSObject.getSlot介绍

暂无

代码示例

代码示例来源:origin: com.eas.platypus/platypus-js-scripting

@Override
public Object getSlot(int index) {
  return delegate.getSlot(index);
}

代码示例来源:origin: com.eas.platypus/platypus-js-reports

public Object get(int aIndex){
  return JSDynaBean.wrap(delegate.getSlot(aIndex), timezoneOffset);
}

代码示例来源:origin: com.eas.platypus/platypus-js-forms

public JSObject indexToElement(int aIdx) {
  if (data != null) {
    Object element = data.getSlot(aIdx);
    return JSType.nullOrUndefined(element) ? null : (JSObject) element;
  } else {
    return null;
  }
}

代码示例来源:origin: com.eas.platypus/platypus-js-reports

@Override
public Object next() {
  return JSDynaBean.wrap(delegate.getSlot(++position), timezoneOffset);
}

代码示例来源:origin: com.eas.platypus/platypus-js-forms

public int elementToIndex(JSObject anElement) {
  if (locator == null) {
    locator = new HashMap<>();
    int length = JSType.toInteger(data.getMember("length"));
    if (length != Integer.MAX_VALUE) {
      for (int i = 0; i < length; i++) {
        Object oElement = data.getSlot(i);
        locator.put(oElement, i);
      }
    }
  }
  Integer idx = locator.get(anElement);
  return idx != null ? idx : -1;
}

代码示例来源:origin: com.eas.platypus/platypus-js-reports

@Override
public Object get(String aName, int aIndex) {
  Object value = delegate.getMember(aName);
  if (value == null) {
    throw new NullPointerException("No indexed value for '" + aName + "[" + aIndex + "]'");
  } else if (value instanceof JSObject) {
    return wrap(((JSObject) value).getSlot(aIndex), timezoneOffset);
  } else if (value.getClass().isArray()) {
    return wrap(Array.get(value, aIndex), timezoneOffset);
  } else if (value instanceof List) {
    return wrap(((List) value).get(aIndex), timezoneOffset);
  } else {
    throw new IllegalArgumentException("Non-indexed property for '" + aName + "[" + aIndex + "]'");
  }
}

代码示例来源:origin: com.eas.platypus/platypus-js-forms

@Override
public Object getValueAt(int rowIndex, int columnIndex) {
  if (columnIndex >= 0 && columnIndex < columns.getColumnCount()) {
    Object oElement = data.getSlot(rowIndex);
    if (oElement instanceof JSObject) {
      return getValue((JSObject) oElement, columnIndex);
    } else {
      return null;
    }
  } else {
    return null;
  }
}

代码示例来源:origin: com.eas.platypus/platypus-js-forms

@Override
public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
  if (columnIndex >= 0 && columnIndex < columns.getColumnCount()) {
    Object oElement = data.getSlot(rowIndex);
    if (oElement instanceof JSObject) {
      Object oldValue = getValue((JSObject) oElement, columnIndex);
      if (!Objects.equals(oldValue, aValue)) {
        setValue((JSObject) oElement, columnIndex, aValue);
      }
    }
  }
}

代码示例来源:origin: com.eas.platypus/platypus-js-forms

if (length > 0 && length != Integer.MAX_VALUE) {
      for (int i = 0; i < length; i++) {
        Object oChild = jsChildren.getSlot(i);
        if (oChild instanceof JSObject) {
          children.add((JSObject) oChild);
int length = JSType.toInteger(data.getMember("length"));
for (int i = 0; i < length; i++) {
  Object oItem = data.getSlot(i);
  if (oItem instanceof JSObject) {
    Object oParent = ModelWidget.getPathData((JSObject) oItem, parentField);

代码示例来源:origin: com.eas.platypus/platypus-js-core

private ServerModuleInfo readInfo(String aModuleName, JSObject jsProxy) {
  Set<String> functions = new HashSet<>();
  JSObject jsFunctions = (JSObject) jsProxy.getMember(CREATE_MODULE_RESPONSE_FUNCTIONS_PROP);
  int length = JSType.toInteger(jsFunctions.getMember(LENGTH_PROP_NAME));
  for (int i = 0; i < length; i++) {
    String fName = JSType.toString(jsFunctions.getSlot(i));
    functions.add(fName);
  }
  boolean permitted = JSType.toBoolean(jsProxy.getMember(CREATE_MODULE_RESPONSE_IS_PERMITTED_PROP));
  return new ServerModuleInfo(aModuleName, functions, permitted);
}

代码示例来源:origin: com.eas.platypus/platypus-js-forms

protected void refill() {
  JSObject value = (JSObject) getJsValue();
  DefaultComboBoxModel<JSObject> dm = ((DefaultComboBoxModel<JSObject>) decorated.getModel());
  dm.removeAllElements();
  boolean valueMet = false;
  if (displayList != null && list) {
    int length = JSType.toInteger(displayList.getMember("length"));
    for (int i = 0; i < length; i++) {
      Object oItem = displayList.getSlot(i);
      if (oItem instanceof JSObject) {
        if (oItem.equals(value)) {
          valueMet = true;
        }
        dm.addElement((JSObject) oItem);
      }
    }
  }
  if (value != null) {
    if (!valueMet) {
      dm.addElement(value);
      injected = value;
    }
    dm.setSelectedItem(value);
  }
}

代码示例来源:origin: com.eas.platypus/platypus-js-core

int length = JSType.toInteger(jsChanges.getMember("length"));
for (int i = 0; i < length; i++) {
  Object oChange = jsChanges.getSlot(i);
  if (oChange instanceof JSObject) {
    JSObject sChange = (JSObject) oChange;

代码示例来源:origin: com.eas.platypus/platypus-js-core

private void readCommons(JSObject jsStructure, ModuleStructure structure) {
  JSObject jsClientDependencies = (JSObject) jsStructure.getMember(CLIENT_DEPENDENCIES_PROP_NAME);
  int clientDepsLength = JSType.toInteger(jsClientDependencies.getMember(LENGTH_PROP_NAME));
  for (int i = 0; i < clientDepsLength; i++) {
    String dep = JSType.toString(jsClientDependencies.getSlot(i));
    structure.getClientDependencies().add(dep);
  }
  JSObject jsQueryDependencies = (JSObject) jsStructure.getMember(QUERY_DEPENDENCIES_PROP_NAME);
  int queryDepsLength = JSType.toInteger(jsQueryDependencies.getMember(LENGTH_PROP_NAME));
  for (int i = 0; i < queryDepsLength; i++) {
    String dep = JSType.toString(jsQueryDependencies.getSlot(i));
    structure.getQueryDependencies().add(dep);
  }
  JSObject jsServerDependencies = (JSObject) jsStructure.getMember(SERVER_DEPENDENCIES_PROP_NAME);
  int serverDepsLength = JSType.toInteger(jsServerDependencies.getMember(LENGTH_PROP_NAME));
  for (int i = 0; i < serverDepsLength; i++) {
    String dep = JSType.toString(jsServerDependencies.getSlot(i));
    structure.getServerDependencies().add(dep);
  }
}

代码示例来源:origin: com.eas.platypus/platypus-js-reports

protected Workbook executeReport() throws Exception {
  if (template.getContent() != null) {
    try (InputStream is = new ByteArrayInputStream(template.getContent())) {
      XLSTransformer transformer = new XLSTransformer();
      transformer.registerRowProcessor(new ExcelRowProcessor());
      generateDataNamedMap(transformer);
      if (template.getFixed() != null) {
        int length = JSType.toInteger(template.getFixed().getMember("length"));
        for (int i = 0; i < length; i++) {
          transformer.markAsFixedSizeCollection(JSType.toString(template.getFixed().getSlot(i)));
        }
      }
      return transformer.transformXLS(is, generated);
    }
  } else {
    throw new Exception("Report template is absent.");
  }
}

代码示例来源:origin: com.eas.platypus/platypus-js-forms

Object oElement = ldata.getSlot(i);
if (elements.contains(oElement)) {
  jsSplice.call(ldata, new Object[]{i, 1});

代码示例来源:origin: com.eas.platypus/platypus-js-core

int partsLength = JSType.toInteger(jsParts.getMember(LENGTH_PROP_NAME));
    for (int i = 0; i < partsLength; i++) {
      String resourceName = JSType.toString(jsParts.getSlot(i));
      getResource(resourceName, aSpace, (File aSynced) -> {
        structure.getParts().addFile(aSynced);
int partsLength = JSType.toInteger(jsParts.getMember(LENGTH_PROP_NAME));
for (int i = 0; i < partsLength; i++) {
  String resourceName = JSType.toString(jsParts.getSlot(i));
  File synced = getResource(resourceName, aSpace, null, null);
  structure.getParts().addFile(synced);

代码示例来源:origin: com.eas.platypus/platypus-js-core

public static void readFields(JSObject pa, Fields aFields) {
    int length = JSType.toInteger(pa.getMember("length"));
    for (int i = 0; i < length; i++) {
      JSObject po = (JSObject)pa.getSlot(i);
      assert po != null;
      String name = JSType.toString(po.getMember(NAME_PROP_NAME));
      String desc = JSType.toString(po.getMember(DESCRIPTION_PROP_NAME));
      
      String type = po.hasMember(TYPE_PROP_NAME) && po.getMember(TYPE_PROP_NAME) != null ? JSType.toString(po.getMember(TYPE_PROP_NAME)) : null;
      boolean pk = JSType.toBoolean(po.getMember(PK_PROP_NAME));
      boolean nullable = JSType.toBoolean(po.getMember(NULLABLE_PROP_NAME));
      Field f = aFields instanceof Parameters ? new Parameter(name) : new Field(name); 
      f.setDescription(desc);
      f.setType(type);
      f.setPk(pk);
      f.setNullable(nullable);
      aFields.add(f);
    }
  }
}

相关文章