1/*
2 * Copyright (C) 2015 The Android Open Source Project
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *      http://www.apache.org/licenses/LICENSE-2.0
7 * Unless required by applicable law or agreed to in writing, software
8 * distributed under the License is distributed on an "AS IS" BASIS,
9 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10 * See the License for the specific language governing permissions and
11 * limitations under the License.
12 */
13
14package android.databinding.tool.writer;
15
16import org.apache.commons.io.FileUtils;
17
18import android.databinding.tool.util.L;
19
20import java.io.File;
21import java.io.IOException;
22
23public abstract class JavaFileWriter {
24    public abstract void writeToFile(String canonicalName, String contents);
25    public void writeToFile(File exactPath, String contents) {
26        File parent = exactPath.getParentFile();
27        parent.mkdirs();
28        try {
29            L.d("writing file %s", exactPath.getAbsoluteFile());
30            FileUtils.writeStringToFile(exactPath, contents);
31        } catch (IOException e) {
32            L.e(e, "Could not write to %s", exactPath);
33        }
34    }
35}
36