/* * Copyright 2014-2015 the original author or authors * * Licensed under the Apache License, Version 2.0 (the “License”); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an “AS IS” BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.wplatform.ddal.command.dml; import com.wplatform.ddal.command.CommandInterface; import com.wplatform.ddal.command.Prepared; import com.wplatform.ddal.command.expression.Expression; import com.wplatform.ddal.engine.Session; import com.wplatform.ddal.message.DbException; import com.wplatform.ddal.result.ResultInterface; /** * This class represents the statement * BACKUP */ public class BackupCommand extends Prepared { private Expression fileNameExpr; public BackupCommand(Session session) { super(session); } /** * Fix the file name, replacing backslash with slash. * * @param f the file name * @return the corrected file name */ public static String correctFileName(String f) { f = f.replace('\\', '/'); if (f.startsWith("/")) { f = f.substring(1); } return f; } public void setFileName(Expression fileName) { this.fileNameExpr = fileName; } @Override public int update() { throw DbException.getUnsupportedException("TODO"); } @Override public boolean isTransactional() { return true; } @Override public boolean needRecompile() { return false; } @Override public ResultInterface queryMeta() { return null; } @Override public int getType() { return CommandInterface.BACKUP; } public Expression getFileNameExpr() { return fileNameExpr; } }