示例#1
0
  public ENTITY create(ENTITY entity, InsertOption option) {

    // 如果空值则返回
    if (entity == null) {
      recordLog(" param entity is null!");
      return null;
    }

    // 如果需要DAO层代理生成新ID
    if (sequenceName != null) {
      entity.setId(getNextId());
    }

    // 判断是否为自动设置的ID
    KEY key = entity.getId();
    boolean autoGeneratedKey =
        (Number.class.isAssignableFrom(orMapping.getKeyClass())
            && (key == null || (Long.parseLong(key.toString()) == 0)));

    // 获取insert语句
    @SuppressWarnings("unchecked")
    Query query = queryGenerater.getCreateQuery(autoGeneratedKey, false, option, entity);
    final String sql = query.getSql();
    final List<Object> params = query.getParams();

    // 如果非自动生成key则返回
    if (!autoGeneratedKey) {
      int rowCount = executeSQL(sql, params);
      return rowCount == 1 ? entity : null;

      // 如果自动生成key,生成KeyHolder
    } else {
      return createAndFetchKey(entity, sql, params);
    }
  }
示例#2
0
  public VALUE put(final KEY key, final VALUE value) {
    int hashCode = 0;
    int index = 0;

    if (key != null) {
      hashCode = key.hashCode();
      index = (hashCode & 0x7FFFFFFF) % mapTable.length;
      for (Entry<KEY, VALUE> e = mapTable[index]; e != null; e = e.next) {
        if ((e.hashCode == hashCode) && key.equals(e.key)) {
          return swapValue(e, value);
        }
      }
    } else {
      for (Entry<KEY, VALUE> e = mapTable[0]; e != null; e = e.next) {
        if (e.key == null) {
          return swapValue(e, value);
        }
      }
    }
    ensureCapacity();
    index = (hashCode & 0x7FFFFFFF) % mapTable.length;
    Entry<KEY, VALUE> e = new Entry<KEY, VALUE>(hashCode, key, value, mapTable[index]);
    mapTable[index] = e;
    listTable[size++] = e;
    return null;
  }
示例#3
0
 private void buildParamStr(StringBuilder spatialInfo, KEY key) {
   Object value = getParameterByKey(key);
   if (value instanceof int[]) {
     value = ArrayUtils.intArrayToString(value);
   }
   spatialInfo.append("\t\t").append(key.getFieldName()).append(":").append(value).append("\n");
 }
  private MethodMetadata getCountByParentMethod() {
    if (parentProperty == null) {
      return null;
    }

    JavaSymbolName methodName = new JavaSymbolName("count" + plural + "ByParentId");

    final JavaType idType =
        KEY.equals(identifierField.getFieldType()) ? STRING : identifierField.getFieldType();
    final JavaType[] parameterTypes = {idType};

    final MethodMetadata method = getGovernorMethod(methodName, parameterTypes);
    if (method != null) {
      return method;
    }

    final String idParamName =
        StringUtils.uncapitalize(parentProperty.getFieldType().getSimpleTypeName()) + "Id";
    final List<JavaSymbolName> parameterNames = Arrays.asList(new JavaSymbolName(idParamName));

    MethodMetadataBuilder methodBuilder =
        new MethodMetadataBuilder(
            getId(),
            PUBLIC_ABSTRACT,
            methodName,
            LONG_PRIMITIVE,
            AnnotatedJavaType.convertFromJavaTypes(parameterTypes),
            parameterNames,
            BODY);

    return methodBuilder.build();
  }
  private MethodMetadata getFindByStringIdMethod() {
    if (!KEY.equals(identifierField.getFieldType())) {
      return null;
    }

    final String idFieldName = identifierField.getFieldName().getSymbolName();
    final JavaSymbolName methodName =
        new JavaSymbolName("find" + destination.getSimpleTypeName() + "ByStringId");
    final JavaType parameterType = STRING;
    final List<JavaSymbolName> parameterNames = Arrays.asList(new JavaSymbolName(idFieldName));
    final JavaType returnType = destination;

    // Check if a method with the same signature already exists in the target type
    final MethodMetadata method = getGovernorMethod(methodName, parameterType);
    if (method != null) {
      // If it already exists, just return the method and omit its generation via the ITD
      return method;
    }

    final MethodMetadataBuilder methodBuilder =
        new MethodMetadataBuilder(
            getId(),
            PUBLIC_ABSTRACT,
            methodName,
            returnType,
            AnnotatedJavaType.convertFromJavaTypes(parameterType),
            parameterNames,
            BODY);

    return methodBuilder.build();
  }
示例#6
0
  /**
   * Método que imprime o relatório da verificação do jTextArea, informa se há vírus no programa por
   * comando true/false nos métodos booleanos, e null nos métodos String ou a própria String, caso
   * ela não seje nula.
   */
  public void taRealatorioText() {

    try {
      // Começando a exibir Relatório da verificação.
      view.getTaRelatorio().setText("");
      view.getTaRelatorio().setText("#################TOOL VÍRUS TOTAL#################;\n");

      // Função  que retornará o relatório da verificação do arquivo.
      VirusTotal VT = new VirusTotal(service.getAPI_KEY());

      Set<ReportScan> Report = VT.ReportScan(SHA256);

      for (ReportScan report : Report) {

        // Exibindo no JTextArea(taRelatorio).
        view.getTaRelatorio()
            .setText(
                view.getTaRelatorio().getText()
                    + "AV: "
                    + report.getVendor()
                    + " Detected: "
                    + report.getDetected()
                    + " Update: "
                    + report.getUpdate()
                    + " Malware Name: "
                    + report.getMalwarename()
                    + ";\n");
      }
    } catch (IOException ex) {
      Logger.getLogger(Controller.class.getName()).log(Level.SEVERE, null, ex);
    }
  }
示例#7
0
 @Override
 public Object put(KEY key, Object value) {
   if (value != null) {
     if (!key.getFieldType().isInstance(value)) {
       throw new IllegalArgumentException(
           "Can not set Parameters Property '"
               + key.getFieldName()
               + "' because of type mismatch. The required type is "
               + key.getFieldType());
     }
     if (value instanceof Number && !key.checkRange((Number) value)) {
       throw new IllegalArgumentException(
           "Can not set Parameters Property '"
               + key.getFieldName()
               + "' because of value '"
               + value
               + "' not in range. Range["
               + key.getMin()
               + "-"
               + key.getMax()
               + "]");
     }
   }
   return super.put(key, value);
 }
 void updateModel(
     final OperationContext context,
     ModelNode model,
     AttributeDefinition attributeDefinition,
     ModelNode attribute)
     throws OperationFailedException {
   String key = KEY.resolveModelAttribute(context, model).asString();
   attribute.remove(key);
 }
 void updateModel(
     final OperationContext context,
     ModelNode model,
     AttributeDefinition attributeDefinition,
     ModelNode attribute)
     throws OperationFailedException {
   String key = KEY.resolveModelAttribute(context, model).asString();
   context.getResult().set(attribute.get(key));
 }
 void updateModel(
     final OperationContext context,
     ModelNode model,
     AttributeDefinition attributeDefinition,
     ModelNode attribute)
     throws OperationFailedException {
   String key = KEY.resolveModelAttribute(context, model).asString();
   ModelNode value = VALUE.resolveModelAttribute(context, model);
   attribute.get(key).set(value);
 }
示例#11
0
 @Override
 public boolean equals(final Object o) {
   if (this == o) {
     return true;
   }
   @SuppressWarnings("unchecked")
   final Entry<KEY, VALUE> e = (Entry<KEY, VALUE>) o;
   return (key != null ? key.equals(e.key) : e.key == null)
       && (value != null ? value.equals(e.value) : e.value == null);
 }
 /*
  * (non-Javadoc)
  * @see com.extjs.gxt.ui.client.data.ModelData#get(java.lang.String)
  */
 @Override
 @SuppressWarnings("unchecked")
 public <X> X get(String property) {
   if (KEY.equals(property)) {
     return (X) value;
   } else if (DISPLAY_NAME.equals(property)) {
     return (X) getDisplayName();
   }
   throw new IllegalArgumentException("Invalid property");
 }
示例#13
0
 @Override
 @Nullable
 public Object getData(@NonNls final String dataId) {
   if (KEY.is(dataId)) {
     return ProjectStructureConfigurable.this;
   } else if (History.KEY.is(dataId)) {
     return getHistory();
   } else {
     return null;
   }
 }
  private MethodMetadata getFindEntriesByParentMethod() {
    if (parentProperty == null) {
      return null;
    }

    JavaSymbolName methodName =
        new JavaSymbolName("find" + domainType.getSimpleTypeName() + "EntriesByParentId");

    final JavaType idType =
        KEY.equals(identifierField.getFieldType()) ? STRING : identifierField.getFieldType();
    final JavaType[] parameterTypes = {idType, INT_PRIMITIVE, INT_PRIMITIVE};

    final MethodMetadata method = getGovernorMethod(methodName, parameterTypes);
    if (method != null) {
      return method;
    }

    final String idParamName =
        StringUtils.uncapitalize(parentProperty.getFieldType().getSimpleTypeName()) + "Id";
    final List<JavaSymbolName> parameterNames =
        Arrays.asList(
            new JavaSymbolName(idParamName),
            new JavaSymbolName("firstResult"),
            new JavaSymbolName("maxResults"));
    final JavaType returnType =
        new JavaType(
            LIST.getFullyQualifiedTypeName(), 0, DataType.TYPE, null, Arrays.asList(domainType));

    final MethodMetadataBuilder methodBuilder =
        new MethodMetadataBuilder(
            getId(),
            PUBLIC_ABSTRACT,
            methodName,
            returnType,
            AnnotatedJavaType.convertFromJavaTypes(parameterTypes),
            parameterNames,
            BODY);

    return methodBuilder.build();
  }
示例#15
0
 /**
  * Convenience method to log difference this {@code Parameters} and specified {@link Connections}
  * object.
  *
  * @param cn
  * @return true if find it different
  */
 public boolean logDiff(Object cn) {
   if (cn == null) {
     throw new IllegalArgumentException("cn Object is required and can not be null");
   }
   boolean result = false;
   BeanUtil beanUtil = BeanUtil.getInstance();
   BeanUtil.PropertyInfo[] properties = beanUtil.getPropertiesInfoForBean(cn.getClass());
   for (int i = 0; i < properties.length; i++) {
     BeanUtil.PropertyInfo property = properties[i];
     String fieldName = property.getName();
     KEY propKey = KEY.getKeyByFieldName(property.getName());
     if (propKey != null) {
       Object paramValue = this.getParameterByKey(propKey);
       Object cnValue = beanUtil.getSimpleProperty(cn, fieldName);
       if ((paramValue != null && !paramValue.equals(cnValue))
           || (paramValue == null && cnValue != null)) {
         result = true;
         System.out.println(
             "Property:" + fieldName + " is different - CN:" + cnValue + " | PARAM:" + paramValue);
       }
     }
   }
   return result;
 }
示例#16
0
    static {
      START_DOCUMENT.transition(JsonToken.CURLYOPEN, START_OBJECT);
      START_DOCUMENT.transition(JsonToken.SQUAREOPEN, START_ARRAY);

      START_OBJECT.transition(JsonToken.CURLYCLOSE, END_OBJECT);
      START_OBJECT.transition(JsonToken.STRING, KEY);

      KEY.transition(JsonToken.COLON, COLON);

      COLON.transition(JsonToken.STRING, OBJECT_STRING);
      COLON.transition(JsonToken.NUMBER, OBJECT_NUMBER);
      COLON.transition(JsonToken.TRUE, OBJECT_TRUE);
      COLON.transition(JsonToken.FALSE, OBJECT_FALSE);
      COLON.transition(JsonToken.NULL, OBJECT_NULL);
      COLON.transition(JsonToken.CURLYOPEN, START_OBJECT);
      COLON.transition(JsonToken.SQUAREOPEN, START_ARRAY);

      OBJECT_STRING.transition(JsonToken.CURLYCLOSE, END_OBJECT);
      OBJECT_STRING.transition(JsonToken.COMMA, OBJECT_COMMA);

      OBJECT_NUMBER.transition(JsonToken.CURLYCLOSE, END_OBJECT);
      OBJECT_NUMBER.transition(JsonToken.COMMA, OBJECT_COMMA);

      OBJECT_TRUE.transition(JsonToken.CURLYCLOSE, END_OBJECT);
      OBJECT_TRUE.transition(JsonToken.COMMA, OBJECT_COMMA);

      OBJECT_FALSE.transition(JsonToken.CURLYCLOSE, END_OBJECT);
      OBJECT_FALSE.transition(JsonToken.COMMA, OBJECT_COMMA);

      OBJECT_NULL.transition(JsonToken.CURLYCLOSE, END_OBJECT);
      OBJECT_NULL.transition(JsonToken.COMMA, OBJECT_COMMA);

      OBJECT_COMMA.transition(JsonToken.STRING, KEY);

      END_OBJECT.transition(JsonToken.CURLYCLOSE, END_OBJECT);
      END_OBJECT.transition(JsonToken.SQUARECLOSE, END_ARRAY);
      // Need an enclosing scope to determine the next state
      // END_OBJECT.transition(JsonToken.COMMA, OBJECT_COMMA or ARRAY_COMMA );
      END_OBJECT.transition(JsonToken.EOF, END_DOCUMENT);

      START_ARRAY.transition(JsonToken.STRING, ARRAY_STRING);
      START_ARRAY.transition(JsonToken.NUMBER, ARRAY_NUMBER);
      START_ARRAY.transition(JsonToken.TRUE, ARRAY_TRUE);
      START_ARRAY.transition(JsonToken.FALSE, ARRAY_FALSE);
      START_ARRAY.transition(JsonToken.NULL, ARRAY_NULL);
      START_ARRAY.transition(JsonToken.CURLYOPEN, START_OBJECT);
      START_ARRAY.transition(JsonToken.SQUAREOPEN, START_ARRAY);
      START_ARRAY.transition(JsonToken.SQUARECLOSE, END_ARRAY);

      ARRAY_STRING.transition(JsonToken.COMMA, ARRAY_COMMA);
      ARRAY_STRING.transition(JsonToken.SQUARECLOSE, END_ARRAY);

      ARRAY_NUMBER.transition(JsonToken.COMMA, ARRAY_COMMA);
      ARRAY_NUMBER.transition(JsonToken.SQUARECLOSE, END_ARRAY);

      ARRAY_TRUE.transition(JsonToken.COMMA, ARRAY_COMMA);
      ARRAY_TRUE.transition(JsonToken.SQUARECLOSE, END_ARRAY);

      ARRAY_FALSE.transition(JsonToken.COMMA, ARRAY_COMMA);
      ARRAY_FALSE.transition(JsonToken.SQUARECLOSE, END_ARRAY);

      ARRAY_NULL.transition(JsonToken.COMMA, ARRAY_COMMA);
      ARRAY_NULL.transition(JsonToken.SQUARECLOSE, END_ARRAY);

      ARRAY_COMMA.transition(JsonToken.STRING, ARRAY_STRING);
      ARRAY_COMMA.transition(JsonToken.NUMBER, ARRAY_NUMBER);
      ARRAY_COMMA.transition(JsonToken.TRUE, ARRAY_TRUE);
      ARRAY_COMMA.transition(JsonToken.FALSE, ARRAY_FALSE);
      ARRAY_COMMA.transition(JsonToken.NULL, ARRAY_NULL);
      ARRAY_COMMA.transition(JsonToken.CURLYOPEN, START_OBJECT);
      ARRAY_COMMA.transition(JsonToken.SQUAREOPEN, START_ARRAY);

      END_ARRAY.transition(JsonToken.CURLYCLOSE, END_OBJECT);
      END_ARRAY.transition(JsonToken.SQUARECLOSE, END_ARRAY);
      // Need an enclosing scope to determine the next state
      // END_ARRAY.transition(JsonToken.COMMA, OBJECT_COMMA or ARRAY_COMMA);
      END_ARRAY.transition(JsonToken.EOF, END_DOCUMENT);
    }
示例#17
0
 static {
   for (KEY key : KEY.values()) {
     fieldMap.put(key.getFieldName(), key);
   }
 }