Returns a {@code Stream} of all public fields and their values for the given object.

@see #fields(Object, Predicate)
337364
public static Stream<Map.Entry<Field, Object>> fields(Object obj) {
		return fields(obj, Predicates.alwaysTrue());
	}
835877
public static Builder pullAll(String field, Object... values) {
        return new Builder().pullAll(field, values);
    }
282201
@SuppressWarnings("rawtypes")
	public List hmget(Object key, Object... fields) {
		Jedis jedis = getJedis();
		try {
			List<byte[]> data = jedis.hmget(keyToBytes(key), fieldsToBytesArray(fields));
			return valueListFromBytesList(data);
		}
		finally {close(jedis);}
	}
769452
public static final Set<String> getProperties(Object bean)
    {
        return stream(bean).collect(Collectors.toSet());
    }
266010
public Map<String, String> get(String... fields) {
		try {
			List<String> datas = getJedisCommands(groupName).hmget(key, fields);
			Map<String, String> result = new HashMap<>();
			
			for (int i = 0; i < fields.length; i++) {
				result.put(fields[i], datas.get(i));
			}
			return result;
		} finally {
			getJedisProvider(groupName).release();
		}

	}
306630
@Nullable
  public Map<String, Object> getData() {
    if (fields == null) {
      return null;
    }

    Map<String, Object> decodedFields = new HashMap<>();
    for (Map.Entry<String, Value> entry : fields.entrySet()) {
      Object decodedValue = decodeValue(entry.getValue());
      decodedValue = convertToDateIfNecessary(decodedValue);
      decodedFields.put(entry.getKey(), decodedValue);
    }
    return decodedFields;
  }
1312732
public static ObjectFields getObjectFields(String pid, String[] fields)
            throws IOException {
        FieldSearchQuery query = new FieldSearchQuery();
        Condition condition = new Condition();
        condition.setProperty("pid");
        condition.setOperator(ComparisonOperator.fromValue("eq"));
        condition.setValue(pid);
        FieldSearchQuery.Conditions conds = new FieldSearchQuery.Conditions();
        conds.getCondition().add(condition);
        ObjectFactory factory = new ObjectFactory();
        query.setConditions(factory.createFieldSearchQueryConditions(conds));
        FieldSearchResult result =
                Administrator.APIA
                        .findObjects(TypeUtility.convertStringtoAOS(fields),
                                     new BigInteger("1"),
                                     query);
        ResultList resultList = result.getResultList();
        if (resultList == null || resultList.getObjectFields() == null
                && resultList.getObjectFields().size() == 0) {
            throw new IOException("Object not found in repository");
        }
        return resultList.getObjectFields().get(0);
    }
107658
public static JsonArray getArray(JsonObject object, String field) {
        final JsonValue value = object.get(field);
        throwExceptionIfNull(value, field);
        return value.asArray();
    }
805537
private Stream<Object> flatten(final Object o) {
        if (o instanceof Map<?, ?>) {
            return ((Map<?, ?>) o).values().stream().flatMap(this::flatten);
        }
        return Stream.of(o);
    }
342849
public KeyedStream<T, Tuple> keyBy(int... fields) {
		if (getType() instanceof BasicArrayTypeInfo || getType() instanceof PrimitiveArrayTypeInfo) {
			return keyBy(KeySelectorUtil.getSelectorForArray(fields, getType()));
		} else {
			return keyBy(new Keys.ExpressionKeys<>(fields, getType()));
		}
	}
994316
public String getValue(final String field)
    {
        FieldValue fieldValue = Iterables.find
        (
            fieldValues,
            new Predicate<FieldValue>()
            {
                @Override
                public boolean apply(FieldValue fv)
                {
                    return fv.getField().equals(field);
                }
            },
            null
        );
        return (fieldValue != null) ? fieldValue.getValue() : null;
    }
92597
public static List<ObjectFields> convertGenObjectFieldsArrayToObjectFieldsList(org.fcrepo.server.types.gen.ObjectFields[] objectFields) {
        List<ObjectFields> result = new ArrayList<ObjectFields>();
        for (org.fcrepo.server.types.gen.ObjectFields objectField : objectFields) {
            result.add(convertGenObjectFieldsToObjectFields(objectField));
        }
        return result;
    }
231184
public static List<Field> getInstanceFields(Class type) {
        List<Field> fields = Lists.newArrayList(type.getDeclaredFields());
        return ImmutableList.copyOf(Iterables.filter(fields, InstanceFieldPredicate.PREDICATE));
    }
49866
public Collection getReaders(Object obj)
	{
		Collection result = null;
        try
        {
            Identity oid = new Identity(obj, getBroker());
            byte selector = (byte) 'r';
            byte[] requestBarr = buildRequestArray(oid, selector);
            
            HttpURLConnection conn = getHttpUrlConnection();
            
            //post request
            BufferedOutputStream out = new BufferedOutputStream(conn.getOutputStream());
            out.write(requestBarr,0,requestBarr.length);
            out.flush();		
            
            // read result from 
            InputStream in = conn.getInputStream();
            ObjectInputStream ois = new ObjectInputStream(in);
            result = (Collection) ois.readObject();
            
            // cleanup
            ois.close();
            out.close();
            conn.disconnect();		
        }
        catch (Throwable t)
        {
            throw new PersistenceBrokerException(t);
        }
        return result;
	}
847658
public static List<Field> getAllDeclaredFields(Object object) {
        List<Field> allFields = new ArrayList<>();
        Class<?> objClass = object.getClass();
        
        // Loop through the class hierarchy
        while (objClass != Object.class) {
            allFields.addAll(Arrays.asList(objClass.getDeclaredFields()));
            
            objClass = objClass.getSuperclass();
        }

        allFields.removeIf(Field::isSynthetic);
        allFields.forEach(f -> f.setAccessible(true));
        
        return allFields;
    }
939364
public java.util.Map<String, java.util.List<String>> getFields() {
        if (fields == null) {
            fields = new com.amazonaws.internal.SdkInternalMap<String, java.util.List<String>>();
        }
        return fields;
    }
448497
public static byte[] get(Object from, Field field)
    {
        PropertyAccessor<?> accessor = PropertyAccessorFactory.getPropertyAccessor(field);
        return accessor.toBytes(getObject(from, field));
    }