// Copyright 2017 The Bazel Authors. All rights reserved.
//
// 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.google.devtools.bazel.e4b;

import com.google.devtools.bazel.e4b.command.BazelAspectLocation;
import java.io.File;
import java.io.IOException;
import java.net.URL;
import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.Platform;

/** Implementation of {@link BazelAspectLocation} using Eclipse OSGi Bundle locations */
class BazelAspectLocationImpl implements BazelAspectLocation {

  // Returns the path of the resources file from this plugin.
  private static File getAspectWorkspace() {
    try {
      URL url = Platform.getBundle(Activator.PLUGIN_ID).getEntry("resources");
      URL resolved = FileLocator.resolve(url);
      return new File(resolved.getPath());
    } catch (IOException e) {
      throw new RuntimeException(e);
    }
  }

  private static File WORKSPACE_DIRECTORY = getAspectWorkspace();

  @Override
  public File getWorkspaceDirectory() {
    return WORKSPACE_DIRECTORY;
  }

  @Override
  public String getAspectLabel() {
    return "//tools/must/be/unique:e4b_aspect.bzl%e4b_aspect.bzl";
  }

}

@@ -1650,20 +1650,16 @@
 b_aspect
-.bzl
 %22;%0A  %7D%0A%0A

Fix aspect name (#35)