diff --git a/jps/model-api/src/org/jetbrains/jps/model/JpsEncodingProjectConfiguration.java b/jps/model-api/src/org/jetbrains/jps/model/JpsEncodingProjectConfiguration.java index 5b918fe0f6d0..a41fbf891897 100644 --- a/jps/model-api/src/org/jetbrains/jps/model/JpsEncodingProjectConfiguration.java +++ b/jps/model-api/src/org/jetbrains/jps/model/JpsEncodingProjectConfiguration.java @@ -3,6 +3,7 @@ package org.jetbrains.jps.model; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.io.File; import java.util.Map; /** @@ -10,7 +11,7 @@ import java.util.Map; */ public interface JpsEncodingProjectConfiguration extends JpsElement { @Nullable - String getEncoding(@NotNull String url); + String getEncoding(@NotNull File file); @Nullable String getProjectEncoding(); diff --git a/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsEncodingProjectConfigurationImpl.java b/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsEncodingProjectConfigurationImpl.java index 5fe77c852ed9..a929662bdbcc 100644 --- a/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsEncodingProjectConfigurationImpl.java +++ b/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsEncodingProjectConfigurationImpl.java @@ -1,11 +1,17 @@ package org.jetbrains.jps.model.impl; +import com.intellij.openapi.util.io.FileUtilRt; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import org.jetbrains.jps.model.JpsElementChildRole; +import org.jetbrains.jps.model.JpsEncodingConfigurationService; import org.jetbrains.jps.model.JpsEncodingProjectConfiguration; +import org.jetbrains.jps.model.JpsModel; import org.jetbrains.jps.model.ex.JpsElementBase; import org.jetbrains.jps.model.ex.JpsElementChildRoleBase; +import org.jetbrains.jps.util.JpsPathUtil; +import java.io.File; import java.util.Collections; import java.util.HashMap; import java.util.Map; @@ -13,7 +19,8 @@ import java.util.Map; /** * @author nik */ -public class JpsEncodingProjectConfigurationImpl extends JpsElementBase implements JpsEncodingProjectConfiguration { +public class JpsEncodingProjectConfigurationImpl extends JpsElementBase + implements JpsEncodingProjectConfiguration { public static final JpsElementChildRole ROLE = JpsElementChildRoleBase.create("encoding configuration"); private final Map myUrlToEncoding = new HashMap(); private final String myProjectEncoding; @@ -23,9 +30,30 @@ public class JpsEncodingProjectConfigurationImpl extends JpsElementBase