package com.intellij.flex.model.run;
import com.intellij.util.xmlb.XmlSerializer;
import org.jdom.Element;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jps.model.ex.JpsElementTypeBase;
import org.jetbrains.jps.model.runConfiguration.JpsRunConfigurationType;
import org.jetbrains.jps.model.serialization.runConfigurations.JpsRunConfigurationPropertiesSerializer;
public class JpsFlashRunConfigurationType extends JpsElementTypeBase<JpsFlashRunnerParameters> implements JpsRunConfigurationType<JpsFlashRunnerParameters> {
public static final JpsFlashRunConfigurationType INSTANCE = new JpsFlashRunConfigurationType();
public static final String ID = "FlashRunConfigurationType";
private JpsFlashRunConfigurationType() {
}
public static JpsRunConfigurationPropertiesSerializer<JpsFlashRunnerParameters> createRunConfigurationSerializer() {
return new JpsRunConfigurationPropertiesSerializer<JpsFlashRunnerParameters>(INSTANCE, ID) {
@Override
public JpsFlashRunnerParameters loadProperties(@Nullable final Element runConfigurationTag) {
final JpsFlashRunnerParameters properties = runConfigurationTag != null
? XmlSerializer.deserialize(runConfigurationTag, JpsFlashRunnerParameters.class)
: null;
return properties != null ? properties : new JpsFlashRunnerParameters();
}
@Override
public void saveProperties(final JpsFlashRunnerParameters properties, final Element runConfigurationTag) {
}
};
}
}