Java源码示例:org.apache.flink.graph.library.metric.undirected.EdgeMetrics.Result

示例1
@Override
public boolean equals(Object obj) {
	if (obj == null) {
		return false;
	}

	if (obj == this) {
		return true;
	}

	if (obj.getClass() != getClass()) {
		return false;
	}

	Result rhs = (Result) obj;

	return new EqualsBuilder()
		.append(triangleTripletCount, rhs.triangleTripletCount)
		.append(rectangleTripletCount, rhs.rectangleTripletCount)
		.append(maximumTriangleTriplets, rhs.maximumTriangleTriplets)
		.append(maximumRectangleTriplets, rhs.maximumRectangleTriplets)
		.isEquals();
}
 
示例2
@Override
public boolean equals(Object obj) {
	if (obj == null) {
		return false;
	}

	if (obj == this) {
		return true;
	}

	if (obj.getClass() != getClass()) {
		return false;
	}

	Result rhs = (Result) obj;

	return new EqualsBuilder()
		.append(triangleTripletCount, rhs.triangleTripletCount)
		.append(rectangleTripletCount, rhs.rectangleTripletCount)
		.append(maximumTriangleTriplets, rhs.maximumTriangleTriplets)
		.append(maximumRectangleTriplets, rhs.maximumRectangleTriplets)
		.isEquals();
}
 
示例3
@Override
public boolean equals(Object obj) {
	if (obj == null) {
		return false;
	}

	if (obj == this) {
		return true;
	}

	if (obj.getClass() != getClass()) {
		return false;
	}

	Result rhs = (Result) obj;

	return new EqualsBuilder()
		.append(triangleTripletCount, rhs.triangleTripletCount)
		.append(rectangleTripletCount, rhs.rectangleTripletCount)
		.append(maximumTriangleTriplets, rhs.maximumTriangleTriplets)
		.append(maximumRectangleTriplets, rhs.maximumRectangleTriplets)
		.isEquals();
}
 
示例4
@Override
public Result getResult() {
	long triangleTripletCount = edgeMetricsHelper.getAccumulator(env, TRIANGLE_TRIPLET_COUNT);
	long rectangleTripletCount = edgeMetricsHelper.getAccumulator(env, RECTANGLE_TRIPLET_COUNT);
	long maximumTriangleTriplets = edgeMetricsHelper.getAccumulator(env, MAXIMUM_TRIANGLE_TRIPLETS);
	long maximumRectangleTriplets = edgeMetricsHelper.getAccumulator(env, MAXIMUM_RECTANGLE_TRIPLETS);

	return new Result(triangleTripletCount, rectangleTripletCount,
		maximumTriangleTriplets, maximumRectangleTriplets);
}
 
示例5
public Result(long triangleTripletCount, long rectangleTripletCount,
		long maximumTriangleTriplets, long maximumRectangleTriplets) {
	this.triangleTripletCount = triangleTripletCount;
	this.rectangleTripletCount = rectangleTripletCount;
	this.maximumTriangleTriplets = maximumTriangleTriplets;
	this.maximumRectangleTriplets = maximumRectangleTriplets;
}
 
示例6
/**
 * Validate a test result.
 *
 * @param graph input graph
 * @param result expected {@link Result}
 * @param <T> graph ID type
 * @throws Exception on error
 */
private static <T extends Comparable<T>> void validate(
		Graph<T, NullValue, NullValue> graph, Result result) throws Exception {
	Result edgeMetrics = new EdgeMetrics<T, NullValue, NullValue>()
		.run(graph)
		.execute();

	assertEquals(result, edgeMetrics);
}
 
示例7
@Test
public void testWithCompleteGraph() throws Exception {
	long expectedDegree = completeGraphVertexCount - 1;
	long expectedMaximumTriplets = CombinatoricsUtils.binomialCoefficient((int) expectedDegree, 2);
	long expectedTriplets = completeGraphVertexCount * expectedMaximumTriplets;

	Result expectedResult = new Result(expectedTriplets / 3, 2 * expectedTriplets / 3,
		expectedMaximumTriplets, expectedMaximumTriplets);

	validate(completeGraph, expectedResult);
}
 
示例8
@Override
public Result getResult() {
	long triangleTripletCount = edgeMetricsHelper.getAccumulator(env, TRIANGLE_TRIPLET_COUNT);
	long rectangleTripletCount = edgeMetricsHelper.getAccumulator(env, RECTANGLE_TRIPLET_COUNT);
	long maximumTriangleTriplets = edgeMetricsHelper.getAccumulator(env, MAXIMUM_TRIANGLE_TRIPLETS);
	long maximumRectangleTriplets = edgeMetricsHelper.getAccumulator(env, MAXIMUM_RECTANGLE_TRIPLETS);

	return new Result(triangleTripletCount, rectangleTripletCount,
		maximumTriangleTriplets, maximumRectangleTriplets);
}
 
示例9
public Result(long triangleTripletCount, long rectangleTripletCount,
		long maximumTriangleTriplets, long maximumRectangleTriplets) {
	this.triangleTripletCount = triangleTripletCount;
	this.rectangleTripletCount = rectangleTripletCount;
	this.maximumTriangleTriplets = maximumTriangleTriplets;
	this.maximumRectangleTriplets = maximumRectangleTriplets;
}
 
示例10
/**
 * Validate a test result.
 *
 * @param graph input graph
 * @param result expected {@link Result}
 * @param <T> graph ID type
 * @throws Exception on error
 */
private static <T extends Comparable<T>> void validate(
		Graph<T, NullValue, NullValue> graph, Result result) throws Exception {
	Result edgeMetrics = new EdgeMetrics<T, NullValue, NullValue>()
		.run(graph)
		.execute();

	assertEquals(result, edgeMetrics);
}
 
示例11
@Test
public void testWithCompleteGraph() throws Exception {
	long expectedDegree = completeGraphVertexCount - 1;
	long expectedMaximumTriplets = CombinatoricsUtils.binomialCoefficient((int) expectedDegree, 2);
	long expectedTriplets = completeGraphVertexCount * expectedMaximumTriplets;

	Result expectedResult = new Result(expectedTriplets / 3, 2 * expectedTriplets / 3,
		expectedMaximumTriplets, expectedMaximumTriplets);

	validate(completeGraph, expectedResult);
}
 
示例12
@Override
public Result getResult() {
	long triangleTripletCount = edgeMetricsHelper.getAccumulator(env, TRIANGLE_TRIPLET_COUNT);
	long rectangleTripletCount = edgeMetricsHelper.getAccumulator(env, RECTANGLE_TRIPLET_COUNT);
	long maximumTriangleTriplets = edgeMetricsHelper.getAccumulator(env, MAXIMUM_TRIANGLE_TRIPLETS);
	long maximumRectangleTriplets = edgeMetricsHelper.getAccumulator(env, MAXIMUM_RECTANGLE_TRIPLETS);

	return new Result(triangleTripletCount, rectangleTripletCount,
		maximumTriangleTriplets, maximumRectangleTriplets);
}
 
示例13
public Result(long triangleTripletCount, long rectangleTripletCount,
		long maximumTriangleTriplets, long maximumRectangleTriplets) {
	this.triangleTripletCount = triangleTripletCount;
	this.rectangleTripletCount = rectangleTripletCount;
	this.maximumTriangleTriplets = maximumTriangleTriplets;
	this.maximumRectangleTriplets = maximumRectangleTriplets;
}
 
示例14
/**
 * Validate a test result.
 *
 * @param graph input graph
 * @param result expected {@link Result}
 * @param <T> graph ID type
 * @throws Exception on error
 */
private static <T extends Comparable<T>> void validate(
		Graph<T, NullValue, NullValue> graph, Result result) throws Exception {
	Result edgeMetrics = new EdgeMetrics<T, NullValue, NullValue>()
		.run(graph)
		.execute();

	assertEquals(result, edgeMetrics);
}
 
示例15
@Test
public void testWithCompleteGraph() throws Exception {
	long expectedDegree = completeGraphVertexCount - 1;
	long expectedMaximumTriplets = CombinatoricsUtils.binomialCoefficient((int) expectedDegree, 2);
	long expectedTriplets = completeGraphVertexCount * expectedMaximumTriplets;

	Result expectedResult = new Result(expectedTriplets / 3, 2 * expectedTriplets / 3,
		expectedMaximumTriplets, expectedMaximumTriplets);

	validate(completeGraph, expectedResult);
}
 
示例16
@Test
public void testWithSimpleGraph() throws Exception {
	validate(undirectedSimpleGraph, new Result(2, 6, 1, 3));
}
 
示例17
@Test
public void testWithEmptyGraphWithVertices() throws Exception {
	validate(emptyGraphWithVertices, new Result(0, 0, 0, 0));
}
 
示例18
@Test
public void testWithEmptyGraphWithoutVertices() throws Exception {
	validate(emptyGraphWithoutVertices, new Result(0, 0, 0, 0));
}
 
示例19
@Test
public void testWithRMatGraph() throws Exception {
	validate(undirectedRMatGraph(10, 16), new Result(107817, 315537, 820, 3822));
}
 
示例20
@Test
public void testWithSimpleGraph() throws Exception {
	validate(undirectedSimpleGraph, new Result(2, 6, 1, 3));
}
 
示例21
@Test
public void testWithEmptyGraphWithVertices() throws Exception {
	validate(emptyGraphWithVertices, new Result(0, 0, 0, 0));
}
 
示例22
@Test
public void testWithEmptyGraphWithoutVertices() throws Exception {
	validate(emptyGraphWithoutVertices, new Result(0, 0, 0, 0));
}
 
示例23
@Test
public void testWithRMatGraph() throws Exception {
	validate(undirectedRMatGraph(10, 16), new Result(107817, 315537, 820, 3822));
}
 
示例24
@Test
public void testWithSimpleGraph() throws Exception {
	validate(undirectedSimpleGraph, new Result(2, 6, 1, 3));
}
 
示例25
@Test
public void testWithEmptyGraphWithVertices() throws Exception {
	validate(emptyGraphWithVertices, new Result(0, 0, 0, 0));
}
 
示例26
@Test
public void testWithEmptyGraphWithoutVertices() throws Exception {
	validate(emptyGraphWithoutVertices, new Result(0, 0, 0, 0));
}
 
示例27
@Test
public void testWithRMatGraph() throws Exception {
	validate(undirectedRMatGraph(10, 16), new Result(107817, 315537, 820, 3822));
}