blob: ee44182d21b0eb8208e96e158ee56060b4c57a0d [file] [log] [blame]
/*
* Copyright (c) 1997, 2022 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Distribution License v. 1.0, which is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
package com.sun.tools.xjc;
import java.io.IOException;
import com.sun.istack.tools.ProtectedTask;
import org.apache.tools.ant.BuildException;
/**
* Captures the properties and then delegate to XJC1 or XJC2 by looking at
* the source attribute.
*
* @author Bhakti Mehta
*/
public class XJCTask extends ProtectedTask {
/**
* Default constructor.
*/
public XJCTask() {}
private String source = "3.0";
/**
* The version of the compiler to run
*/
public void setSource(String version) {
if ("3.0".equals(version)) {
this.source = version;
return;
}
throw new BuildException("Illegal version "+version);
}
@Override
protected ClassLoader createClassLoader() throws ClassNotFoundException, IOException {
return SecureLoader.getClassClassLoader(XJCTask.class);
}
@Override
protected String getCoreClassName() {
return "com.sun.tools.xjc.XJC2Task";
}
}