Пример #1
0
 @Override
 public void setOwner(AbstractPlayer owner) {
   this.owner = owner;
   for (AbstractProperty property : propertyGroup.getProperties()) {
     property.forceUpdate();
   }
 }
 public void readExternal(@NotNull Element element) {
   Map<String, AbstractProperty> propertyByName = new THashMap<>();
   for (AbstractProperty abstractProperty : myExternalizers.keySet()) {
     propertyByName.put(abstractProperty.getName(), abstractProperty);
   }
   for (Element child : element.getChildren()) {
     AbstractProperty property = propertyByName.get(child.getName());
     if (property == null) {
       continue;
     }
     Externalizer externalizer = myExternalizers.get(property);
     if (externalizer == null) {
       continue;
     }
     try {
       myValues.put(property, externalizer.readValue(child));
     } catch (Exception e) {
       LOG.info(e);
     }
   }
 }
Пример #3
0
  @Override
  public TupleType buildType(Optional<CassandraOptions> cassandraOptions) {
    if (LOGGER.isDebugEnabled()) {
      LOGGER.debug(format("Build current '%s' tuple8 data type", fieldName));
    }

    return tupleTypeFactory.typeFor(
        aProperty.buildType(cassandraOptions),
        bProperty.buildType(cassandraOptions),
        cProperty.buildType(cassandraOptions),
        dProperty.buildType(cassandraOptions),
        eProperty.buildType(cassandraOptions),
        fProperty.buildType(cassandraOptions),
        gProperty.buildType(cassandraOptions),
        hProperty.buildType(cassandraOptions));
  }
  public void writeExternal(@NotNull Element element) {
    if (myExternalizers.isEmpty()) {
      return;
    }

    List<AbstractProperty> properties = new ArrayList<>(myExternalizers.keySet());
    Collections.sort(properties, AbstractProperty.NAME_COMPARATOR);
    for (AbstractProperty property : properties) {
      Externalizer externalizer = myExternalizers.get(property);
      if (externalizer == null) {
        continue;
      }

      Object propValue = property.get(this);
      if (!Comparing.equal(propValue, property.getDefault(this))) {
        Element child = new Element(property.getName());
        externalizer.writeValue(child, propValue);
        if (!JDOMUtil.isEmpty(child)) {
          element.addContent(child);
        }
      }
    }
  }
Пример #5
0
  @Override
  TupleValue encodeFromJavaInternal(
      Tuple8<A, B, C, D, E, F, G, H> tuple8, Optional<CassandraOptions> cassandraOptions) {
    if (LOGGER.isTraceEnabled()) {
      LOGGER.trace(format("Encode from Java '%s' tuple8 %s to CQL type", fieldName, tuple8));
    }

    return getRuntimeTupleType(cassandraOptions)
        .newValue(
            aProperty.encodeFromRaw(tuple8._1(), cassandraOptions),
            bProperty.encodeFromRaw(tuple8._2(), cassandraOptions),
            cProperty.encodeFromRaw(tuple8._3(), cassandraOptions),
            dProperty.encodeFromRaw(tuple8._4(), cassandraOptions),
            eProperty.encodeFromRaw(tuple8._5(), cassandraOptions),
            fProperty.encodeFromRaw(tuple8._6(), cassandraOptions),
            gProperty.encodeFromRaw(tuple8._7(), cassandraOptions),
            hProperty.encodeFromRaw(tuple8._8(), cassandraOptions));
  }
Пример #6
0
  @Override
  Tuple8<A, B, C, D, E, F, G, H> decodeFromRawInternal(Object o) {
    if (LOGGER.isTraceEnabled()) {
      LOGGER.trace(format("Decode '%s' tuple8 raw object %s", fieldName, o));
    }

    Validator.validateTrue(
        TupleValue.class.isAssignableFrom(o.getClass()),
        "The class of object %s to decode should be %s",
        o,
        TupleValue.class.getCanonicalName());
    final List<DataType> types = tupleType.getComponentTypes();
    return new Tuple8<>(
        aProperty.decodeFromRaw(extractType((TupleValue) o, types.get(0), aProperty, 0)),
        bProperty.decodeFromRaw(extractType((TupleValue) o, types.get(1), bProperty, 1)),
        cProperty.decodeFromRaw(extractType((TupleValue) o, types.get(2), cProperty, 2)),
        dProperty.decodeFromRaw(extractType((TupleValue) o, types.get(3), dProperty, 3)),
        eProperty.decodeFromRaw(extractType((TupleValue) o, types.get(4), eProperty, 4)),
        fProperty.decodeFromRaw(extractType((TupleValue) o, types.get(5), fProperty, 5)),
        gProperty.decodeFromRaw(extractType((TupleValue) o, types.get(6), gProperty, 6)),
        hProperty.decodeFromRaw(extractType((TupleValue) o, types.get(7), hProperty, 7)));
  }
Пример #7
0
 @Override
 public int compareTo(AbstractProperty otherProperty) {
   return sequenceNumber - otherProperty.getSequenceNumber();
 }
 public void rememberKey(AbstractProperty property) {
   LOG.assertTrue(myExternalizers.get(property) == null, property.getName());
   myExternalizers.put(property, null);
 }
 public <T> void registerProperty(AbstractProperty<T> property, Externalizer<T> externalizer) {
   String name = property.getName();
   LOG.assertTrue(!myExternalizers.containsKey(property), name);
   myExternalizers.put(property, externalizer);
 }
 @Override
 protected Object getValueOf(AbstractProperty property) {
   Object value = myValues.get(property);
   return value != null ? value : property.getDefault(this);
 }
Пример #11
0
 @Override
 public void setTimes(Date times) {
   super.setTimes(times);
   this.times = times;
 }
Пример #12
0
 @Override
 public void setUnit(String unit) {
   super.setUnit(unit);
   this.unit = unit;
 }
Пример #13
0
 @Override
 public void setObservedURL(String observedURL) {
   super.setObservedURL(observedURL);
   this.observedURL = observedURL;
 }
Пример #14
0
 @Override
 public void setPropertyName(String propertyName) {
   super.setPropertyName(propertyName);
   this.propertyName = propertyName;
 }
 /**
  * Register pre-defined Property Accessor
  *
  * @param propertyAccessor AbstractProperty
  */
 private void registerPropertyAccessor(AbstractProperty propertyAccessor) {
   propertyAccessors.put(propertyAccessor.getName(), propertyAccessor);
 }