/*
# Licensed Materials - Property of IBM
# Copyright IBM Corp. 2015
*/
package com.ibm.streamsx.topology.internal.core;
import java.lang.reflect.Type;
import com.ibm.streamsx.topology.TopologyElement;
public abstract class TupleContainer<T> extends TopologyItem {
private final Type tupleType;
protected TupleContainer(TopologyElement fe, Type tupleType) {
super(fe);
this.tupleType = tupleType;
}
@SuppressWarnings("unchecked")
public final Class<T> getTupleClass() {
if (tupleType instanceof Class)
return (Class<T>) tupleType;
return null;
}
public final Type getTupleType() {
return tupleType;
}
}