import java.util.Collection;
import com.rti.dds.infrastructure.Copyable;
import com.rti.dds.util.Enum;
import com.rti.dds.util.Sequence;
import com.rti.dds.util.LoanableSequence;
public final class DateTimeSeq extends LoanableSequence implements Copyable {
transient Sequence _loanedInfoSequence = null;
public DateTimeSeq() {
super(DateTime.class);
}
public DateTimeSeq(int initialMaximum) {
super(DateTime.class, initialMaximum);
}
public DateTimeSeq(Collection elements) {
super(DateTime.class, elements);
}
public boolean equals(Object o){
if (o == null){
return false;
}
if(getClass() != o.getClass()) {
return false;
}
DateTimeSeq otherObj = (DateTimeSeq) o;
if (size() != otherObj.size()) {
return false;
}
for(int i = 0; i < size(); ++i) {
DateTime left = (DateTime) get(i);
DateTime right = (DateTime) otherObj.get(i);
if ( ! (left == null ?
right == null :
(right != null &&
DateTimeTypeSupport.get_instance().are_samples_equal(left, right)))){
return false;
}
}
return true;
}
public Object copy_from(Object src) {
Sequence typedSrc = (Sequence) src;
final int srcSize = typedSrc.size();
final int origSize = size();
if (getMaximum() < srcSize) {
setMaximum(srcSize);
}
if (srcSize < origSize){
removeRange(srcSize, origSize);
}
for(int i = 0; (i < origSize) && (i < srcSize); i++){
if (typedSrc.get(i) == null){
set(i, null);
} else {
if (get(i) == null){
set(i, DateTimeTypeSupport.get_instance().create_data());
}
set(i, ((Copyable) get(i)).copy_from(typedSrc.get(i)));
}
}
for(int i = origSize; i < srcSize; i++){
if (typedSrc.get(i) == null) {
add(null);
} else {
add(DateTimeTypeSupport.get_instance().create_data());
set(i, ((Copyable) get(i)).copy_from(typedSrc.get(i)));
}
}
return this;
}
}