You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
1.5 KiB
75 lines
1.5 KiB
package com.util;
|
|
import java.io.IOException;
|
|
import java.util.Collection;
|
|
import java.util.Enumeration;
|
|
import java.util.Hashtable;
|
|
|
|
public class SmartFiles
|
|
{
|
|
//private SmartUpload m_parent;
|
|
private Hashtable m_files;
|
|
private int m_counter;
|
|
|
|
SmartFiles()
|
|
{
|
|
m_files = new Hashtable();
|
|
m_counter = 0;
|
|
}
|
|
|
|
protected void addFile(SmartFile file)
|
|
{
|
|
if(file == null)
|
|
{
|
|
throw new IllegalArgumentException("newFile cannot be null.");
|
|
}
|
|
else
|
|
{
|
|
m_files.put(new Integer(m_counter),file);
|
|
m_counter++;
|
|
return;
|
|
}
|
|
}
|
|
|
|
public SmartFile getFile(int i)
|
|
{
|
|
if(i < 0)
|
|
{
|
|
throw new IllegalArgumentException("File's index cannot be a negative value (1210).");
|
|
}
|
|
SmartFile file = (SmartFile)m_files.get(new Integer(i));
|
|
if(file == null)
|
|
{
|
|
throw new IllegalArgumentException("Files' name is invalid or does not exist (1205).");
|
|
}
|
|
else
|
|
{
|
|
return file;
|
|
}
|
|
}
|
|
|
|
public int getCount()
|
|
{
|
|
return m_counter;
|
|
}
|
|
|
|
public long getSize() throws IOException
|
|
{
|
|
long l = 0L;
|
|
for(int i = 0;i < m_counter;i++)
|
|
{
|
|
l += getFile(i).getSize();
|
|
}
|
|
return l;
|
|
}
|
|
|
|
public Collection getCollection()
|
|
{
|
|
return m_files.values();
|
|
}
|
|
|
|
public Enumeration getEnumeration()
|
|
{
|
|
return m_files.elements();
|
|
}
|
|
}
|