Criar mascaras em AWT

pessoal como faço para criar mascara em um textfield em awt???

desde ja agradeço.

Cara vc pode Estender a classe PlainDocument.
Segue um exemplo.

import java.math.BigDecimal;
import java.text.NumberFormat;
import java.util.Locale;

import javax.swing.text.AttributeSet;
import javax.swing.text.BadLocationException;
import javax.swing.text.PlainDocument;

@SuppressWarnings("serial")
public class Monitoracao extends PlainDocument {

	private int tam;
	private int cont = 0;
	private Tipo myTipo;
	private static final int TAMANHO_DATA = 10;
	private static final int TAMANHO_CTRLV = 1;
	private static final int TAMANHO_HORA = 5;
	private char NUMERO_DATA;
	private char NUMERO_HORA = ' ';
	private boolean ctrlV;

	public Monitoracao(Tipo tipo, int maxlen) {
		super();
		tam = maxlen;
		myTipo = tipo;
	}

	public Monitoracao(Tipo tipo) {
		super();
		myTipo = tipo;
	}

	@SuppressWarnings("static-access")
	public void insertString(int offset, String str, AttributeSet attr)
			throws BadLocationException {

		// *********************************** VALIDA NUMEROS
	

		if (myTipo == myTipo.NUMERO) {
			cont = 0;
			if (str.length() > TAMANHO_CTRLV) {
				while (cont < str.length()) {
					ctrlV = Character.isDigit(str.charAt(cont));
					cont++;
					if (ctrlV == false) {
						cont = 0;
						break;
					}
				}
			} else {
				ctrlV = Character.isDigit(str.charAt(cont));
			}
			if ((str != null) && (getLength() + str.length() <= tam) && (ctrlV)) {
				super.insertString(offset, str, attr);
			}
		}
}

Adicionando no text

TNprocesso = new JTextField(15); TNprocesso.setDocument(new Monitoracao(Tipo.NUMERO, 20));

Diego nesta classe tem import swing, isso vai funcionar no AWG? sendo que swing é uma evoluçao do awt.

Verdade o awt não implementa setDocument.
complicou.