You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2015/09/01 15:40:54 UTC

[07/14] ignite git commit: Merge remote-tracking branch 'remotes/apache-git/master' into ignite-1273

http://git-wip-us.apache.org/repos/asf/ignite/blob/979043dd/modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortableObjectArrayLazyValue.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortableObjectArrayLazyValue.java
index 6e75d89,0000000..1126a3c
mode 100644,000000..100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortableObjectArrayLazyValue.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortableObjectArrayLazyValue.java
@@@ -1,90 -1,0 +1,91 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the "License"); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + *      http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an "AS IS" BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +
 +package org.apache.ignite.internal.portable.builder;
 +
- import org.apache.ignite.internal.portable.*;
- import org.apache.ignite.internal.util.typedef.internal.*;
- import org.apache.ignite.portable.*;
++import org.apache.ignite.internal.portable.GridPortableMarshaller;
++import org.apache.ignite.internal.portable.PortableWriterExImpl;
++import org.apache.ignite.internal.util.typedef.internal.U;
++import org.apache.ignite.portable.PortableInvalidClassException;
 +
 +/**
 + *
 + */
 +class PortableObjectArrayLazyValue extends PortableAbstractLazyValue {
 +    /** */
 +    private Object[] lazyValsArr;
 +
 +    /** */
 +    private int compTypeId;
 +
 +    /** */
 +    private String clsName;
 +
 +    /**
 +     * @param reader Reader.
 +     */
 +    protected PortableObjectArrayLazyValue(PortableBuilderReader reader) {
 +        super(reader, reader.position() - 1);
 +
 +        int typeId = reader.readInt();
 +
 +        if (typeId == GridPortableMarshaller.UNREGISTERED_TYPE_ID) {
 +            clsName = reader.readString();
 +
 +            Class cls;
 +
 +            try {
 +                // TODO: IGNITE-1272 - Is class loader needed here?
 +                cls = U.forName(reader.readString(), null);
 +            }
 +            catch (ClassNotFoundException e) {
 +                throw new PortableInvalidClassException("Failed to load the class: " + clsName, e);
 +            }
 +
 +            compTypeId = reader.portableContext().descriptorForClass(cls).typeId();
 +        }
 +        else {
 +            compTypeId = typeId;
 +            clsName = null;
 +        }
 +
 +        int size = reader.readInt();
 +
 +        lazyValsArr = new Object[size];
 +
 +        for (int i = 0; i < size; i++)
 +            lazyValsArr[i] = reader.parseValue();
 +    }
 +
 +    /** {@inheritDoc} */
 +    @Override protected Object init() {
 +        for (int i = 0; i < lazyValsArr.length; i++) {
 +            if (lazyValsArr[i] instanceof PortableLazyValue)
 +                lazyValsArr[i] = ((PortableLazyValue)lazyValsArr[i]).value();
 +        }
 +
 +        return lazyValsArr;
 +    }
 +
 +    /** {@inheritDoc} */
 +    @Override public void writeTo(PortableWriterExImpl writer, PortableBuilderSerializer ctx) {
 +        if (clsName == null)
 +            ctx.writeArray(writer, GridPortableMarshaller.OBJ_ARR, lazyValsArr, compTypeId);
 +        else
 +            ctx.writeArray(writer, GridPortableMarshaller.OBJ_ARR, lazyValsArr, clsName);
 +    }
- }
++}

http://git-wip-us.apache.org/repos/asf/ignite/blob/979043dd/modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortablePlainPortableObject.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortablePlainPortableObject.java
index 42a670e,0000000..8743fbe
mode 100644,000000..100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortablePlainPortableObject.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortablePlainPortableObject.java
@@@ -1,51 -1,0 +1,53 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the "License"); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + *      http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an "AS IS" BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +
 +package org.apache.ignite.internal.portable.builder;
 +
- import org.apache.ignite.internal.portable.*;
- import org.apache.ignite.portable.*;
++import org.apache.ignite.internal.portable.PortableObjectImpl;
++import org.apache.ignite.internal.portable.PortableObjectOffheapImpl;
++import org.apache.ignite.internal.portable.PortableWriterExImpl;
++import org.apache.ignite.portable.PortableObject;
 +
 +/**
 + *
 + */
 +public class PortablePlainPortableObject implements PortableLazyValue {
 +    /** */
 +    private final PortableObject portableObj;
 +
 +    /**
 +     * @param portableObj Portable object.
 +     */
 +    public PortablePlainPortableObject(PortableObject portableObj) {
 +        this.portableObj = portableObj;
 +    }
 +
 +    /** {@inheritDoc} */
 +    @Override public Object value() {
 +        return portableObj;
 +    }
 +
 +    /** {@inheritDoc} */
 +    @Override public void writeTo(PortableWriterExImpl writer, PortableBuilderSerializer ctx) {
 +        PortableObject val = portableObj;
 +
 +        if (val instanceof PortableObjectOffheapImpl)
 +            val = ((PortableObjectOffheapImpl)val).heapCopy();
 +
 +        writer.doWritePortableObject((PortableObjectImpl)val);
 +    }
- }
++}

http://git-wip-us.apache.org/repos/asf/ignite/blob/979043dd/modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortableValueWithType.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortableValueWithType.java
index 61fd52f,0000000..2e031f0
mode 100644,000000..100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortableValueWithType.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/portable/builder/PortableValueWithType.java
@@@ -1,75 -1,0 +1,75 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the "License"); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + *      http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an "AS IS" BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +
 +package org.apache.ignite.internal.portable.builder;
 +
- import org.apache.ignite.internal.portable.*;
- import org.apache.ignite.internal.processors.cache.portable.*;
- import org.apache.ignite.internal.util.typedef.internal.*;
++import org.apache.ignite.internal.portable.PortableWriterExImpl;
++import org.apache.ignite.internal.processors.cache.portable.CacheObjectPortableProcessorImpl;
++import org.apache.ignite.internal.util.typedef.internal.S;
 +
 +/**
 + *
 + */
 +class PortableValueWithType implements PortableLazyValue {
 +    /** */
 +    private byte type;
 +
 +    /** */
 +    private Object val;
 +
 +    /**
 +     * @param type Type
 +     * @param val Value.
 +     */
 +    PortableValueWithType(byte type, Object val) {
 +        this.type = type;
 +        this.val = val;
 +    }
 +
 +    /** {@inheritDoc} */
 +    @Override public void writeTo(PortableWriterExImpl writer, PortableBuilderSerializer ctx) {
 +        if (val instanceof PortableBuilderSerializationAware)
 +            ((PortableBuilderSerializationAware)val).writeTo(writer, ctx);
 +        else
 +            ctx.writeValue(writer, val);
 +    }
 +
 +    /** {@inheritDoc} */
 +    public String typeName() {
 +        return CacheObjectPortableProcessorImpl.fieldTypeName(type);
 +    }
 +
 +    /** {@inheritDoc} */
 +    @Override public Object value() {
 +        if (val instanceof PortableLazyValue)
 +            return ((PortableLazyValue)val).value();
 +
 +        return val;
 +    }
 +
 +    /**
 +     * @param val New value.
 +     */
 +    public void value(Object val) {
 +        this.val = val;
 +    }
 +
 +    /** {@inheritDoc} */
 +    @Override public String toString() {
 +        return S.toString(PortableValueWithType.class, this);
 +    }
- }
++}

http://git-wip-us.apache.org/repos/asf/ignite/blob/979043dd/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableBuilderAdditionalSelfTest.java
----------------------------------------------------------------------
diff --cc modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableBuilderAdditionalSelfTest.java
index d8d85ed,488361c..61ec714
--- a/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableBuilderAdditionalSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableBuilderAdditionalSelfTest.java
@@@ -17,28 -17,49 +17,52 @@@
  
  package org.apache.ignite.internal.portable;
  
- import org.apache.ignite.*;
- import org.apache.ignite.configuration.*;
- import org.apache.ignite.internal.portable.builder.*;
- import org.apache.ignite.internal.portable.mutabletest.*;
- import org.apache.ignite.internal.processors.cache.portable.*;
- import org.apache.ignite.internal.util.lang.*;
- import org.apache.ignite.marshaller.portable.*;
- import org.apache.ignite.portable.*;
- import org.apache.ignite.testframework.*;
- import org.apache.ignite.testframework.junits.common.*;
- 
- import com.google.common.collect.*;
- import org.junit.*;
- 
- import java.lang.reflect.*;
- import java.math.*;
- import java.sql.*;
- import java.util.*;
+ import com.google.common.collect.ImmutableMap;
+ import com.google.common.collect.Lists;
+ import com.google.common.collect.Maps;
+ import com.google.common.collect.Sets;
+ import java.lang.reflect.Field;
++import java.math.BigDecimal;
+ import java.sql.Timestamp;
+ import java.util.ArrayList;
+ import java.util.Arrays;
+ import java.util.Collections;
  import java.util.Date;
- 
- import static org.apache.ignite.cache.CacheMode.*;
- import static org.apache.ignite.internal.portable.mutabletest.GridPortableTestClasses.*;
+ import java.util.HashSet;
+ import java.util.LinkedList;
+ import java.util.List;
+ import java.util.Map;
+ import java.util.Objects;
+ import java.util.Set;
+ import java.util.UUID;
+ import org.apache.ignite.IgniteCheckedException;
+ import org.apache.ignite.IgnitePortables;
+ import org.apache.ignite.configuration.CacheConfiguration;
+ import org.apache.ignite.configuration.IgniteConfiguration;
++import org.apache.ignite.internal.portable.builder.PortableBuilderEnum;
++import org.apache.ignite.internal.portable.builder.PortableBuilderImpl;
+ import org.apache.ignite.internal.portable.mutabletest.GridPortableMarshalerAwareTestClass;
+ import org.apache.ignite.internal.processors.cache.portable.CacheObjectPortableProcessorImpl;
+ import org.apache.ignite.internal.processors.cache.portable.IgnitePortablesImpl;
+ import org.apache.ignite.internal.util.lang.GridMapEntry;
+ import org.apache.ignite.marshaller.portable.PortableMarshaller;
+ import org.apache.ignite.portable.PortableBuilder;
+ import org.apache.ignite.portable.PortableMetadata;
+ import org.apache.ignite.portable.PortableObject;
+ import org.apache.ignite.testframework.GridTestUtils;
+ import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
+ import org.junit.Assert;
+ 
+ import static org.apache.ignite.cache.CacheMode.REPLICATED;
+ import static org.apache.ignite.internal.portable.mutabletest.GridPortableTestClasses.Address;
+ import static org.apache.ignite.internal.portable.mutabletest.GridPortableTestClasses.AddressBook;
+ import static org.apache.ignite.internal.portable.mutabletest.GridPortableTestClasses.Company;
+ import static org.apache.ignite.internal.portable.mutabletest.GridPortableTestClasses.TestObjectAllTypes;
+ import static org.apache.ignite.internal.portable.mutabletest.GridPortableTestClasses.TestObjectArrayList;
+ import static org.apache.ignite.internal.portable.mutabletest.GridPortableTestClasses.TestObjectContainer;
+ import static org.apache.ignite.internal.portable.mutabletest.GridPortableTestClasses.TestObjectEnum;
+ import static org.apache.ignite.internal.portable.mutabletest.GridPortableTestClasses.TestObjectInner;
+ import static org.apache.ignite.internal.portable.mutabletest.GridPortableTestClasses.TestObjectOuter;
  
  /**
   *

http://git-wip-us.apache.org/repos/asf/ignite/blob/979043dd/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMetaDataDisabledSelfTest.java
----------------------------------------------------------------------
diff --cc modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMetaDataDisabledSelfTest.java
index 28ccee6,d329818..05df23b
--- a/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMetaDataDisabledSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMetaDataDisabledSelfTest.java
@@@ -16,13 -16,16 +16,17 @@@
   */
  package org.apache.ignite.internal.portable;
  
- import org.apache.ignite.*;
- import org.apache.ignite.configuration.*;
- import org.apache.ignite.marshaller.portable.*;
- import org.apache.ignite.portable.*;
- import org.apache.ignite.testframework.junits.common.*;
- 
- import java.util.*;
+ import java.util.Arrays;
+ import org.apache.ignite.IgnitePortables;
+ import org.apache.ignite.configuration.IgniteConfiguration;
+ import org.apache.ignite.marshaller.portable.PortableMarshaller;
++import org.apache.ignite.portable.PortableBuilder;
+ import org.apache.ignite.portable.PortableException;
+ import org.apache.ignite.portable.PortableMarshalAware;
+ import org.apache.ignite.portable.PortableReader;
+ import org.apache.ignite.portable.PortableTypeConfiguration;
+ import org.apache.ignite.portable.PortableWriter;
+ import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
  
  /**
   * Test for disabled meta data.
@@@ -223,12 -218,4 +227,12 @@@ public class GridPortableMetaDataDisabl
              // No-op.
          }
      }
 +
 +    /**
 +     */
 +    @SuppressWarnings("UnusedDeclaration")
 +    private static class TestObject3 {
 +        /** */
 +        private int field;
 +    }
- }
+ }

http://git-wip-us.apache.org/repos/asf/ignite/blob/979043dd/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMetaDataSelfTest.java
----------------------------------------------------------------------
diff --cc modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMetaDataSelfTest.java
index 4c91ec5,f6d7627..9054297
--- a/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMetaDataSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMetaDataSelfTest.java
@@@ -349,12 -349,4 +358,12 @@@ public class GridPortableMetaDataSelfTe
              // No-op.
          }
      }
 +
 +    /**
 +     */
 +    @SuppressWarnings("UnusedDeclaration")
 +    private static class TestObject3 {
 +        /** */
 +        private int intVal;
 +    }
- }
+ }

http://git-wip-us.apache.org/repos/asf/ignite/blob/979043dd/modules/core/src/test/java/org/apache/ignite/internal/portable/mutabletest/GridPortableTestClasses.java
----------------------------------------------------------------------
diff --cc modules/core/src/test/java/org/apache/ignite/internal/portable/mutabletest/GridPortableTestClasses.java
index 09404bc,ce97a8d..e49514b
--- a/modules/core/src/test/java/org/apache/ignite/internal/portable/mutabletest/GridPortableTestClasses.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/portable/mutabletest/GridPortableTestClasses.java
@@@ -17,14 -17,20 +17,21 @@@
  
  package org.apache.ignite.internal.portable.mutabletest;
  
- import org.apache.ignite.internal.util.lang.*;
- import org.apache.ignite.portable.*;
- 
- import com.google.common.base.*;
- 
- import java.io.*;
- import java.math.*;
- import java.util.*;
+ import com.google.common.base.Throwables;
+ import java.io.ByteArrayOutputStream;
+ import java.io.IOException;
+ import java.io.ObjectOutput;
+ import java.io.ObjectOutputStream;
+ import java.io.Serializable;
++import java.math.BigDecimal;
+ import java.util.ArrayList;
+ import java.util.Date;
+ import java.util.List;
+ import java.util.Map;
+ import java.util.TreeMap;
+ import java.util.UUID;
+ import org.apache.ignite.internal.util.lang.GridMapEntry;
+ import org.apache.ignite.portable.PortableObject;
  
  /**
   *

http://git-wip-us.apache.org/repos/asf/ignite/blob/979043dd/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/portable/GridCacheClientNodePortableMetadataMultinodeTest.java
----------------------------------------------------------------------