1708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesrenpackage autotest.tko;
2708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren
3708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren
4708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesrenpublic class JobKeyvalField extends AttributeField {
5708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    public static final String TYPE_NAME = "Job Keyval";
6708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren
7708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    @Override
8708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    protected ParameterizedField freshInstance() {
9708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren        return new JobKeyvalField();
10708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    }
11708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren
12708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    @Override
13708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    public String getTypeName() {
14708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren        return TYPE_NAME;
15708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    }
16708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren
17708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    @Override
18708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    protected String getFieldParameterName() {
19708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren        return "job_keyval_fields";
20708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    }
21708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren
22708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    @Override
23708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    public String getBaseSqlName() {
24708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren        return "job_keyval_";
25708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren    }
26708f1c00df025e899c0ee8080fa4e81f71b8fa4cjamesren}
27