diff options
author | 2017-12-12 16:41:33 -0800 | |
---|---|---|
committer | 2017-12-12 16:44:01 -0800 | |
commit | b28285a51ab39c0983478731f03ac1a213f20ada (patch) | |
tree | 1f469335fd319e51df652ec2a8c732dc74a48f46 /src/main/java/com/google/devtools/build/lib/skyframe/packages | |
parent | 2968132137f715f59e50ad94af6df56a29228c8e (diff) |
Initialize the RuleClassProvider only once.
This saves some CPU/wall time when creating multiple PackageLoader instances.
RELNOTES: None
PiperOrigin-RevId: 178834826
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/packages')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/packages/BazelPackageLoader.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/packages/BazelPackageLoader.java b/src/main/java/com/google/devtools/build/lib/skyframe/packages/BazelPackageLoader.java index 79ead3416d..dfed69265d 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/packages/BazelPackageLoader.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/packages/BazelPackageLoader.java @@ -16,6 +16,7 @@ package com.google.devtools.build.lib.skyframe.packages; import com.google.common.base.Suppliers; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; +import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider; import com.google.devtools.build.lib.bazel.rules.BazelRuleClassProvider; import com.google.devtools.build.lib.packages.BuildFileName; import com.google.devtools.build.lib.packages.PackageFactory.EnvironmentExtension; @@ -76,6 +77,9 @@ public class BazelPackageLoader extends AbstractPackageLoader { /** Builder for {@link BazelPackageLoader} instances. */ public static class Builder extends AbstractPackageLoader.Builder { + private static final ConfiguredRuleClassProvider DEFAULT_RULE_CLASS_PROVIDER = + BazelRuleClassProvider.create(); + private Builder(Path workspaceDir) { super(workspaceDir); } @@ -87,12 +91,12 @@ public class BazelPackageLoader extends AbstractPackageLoader { @Override protected RuleClassProvider getDefaultRuleClassProvider() { - return BazelRuleClassProvider.create(); + return DEFAULT_RULE_CLASS_PROVIDER; } @Override protected String getDefaultDefaultPackageContents() { - return BazelRuleClassProvider.create().getDefaultsPackageContent( + return DEFAULT_RULE_CLASS_PROVIDER.getDefaultsPackageContent( InvocationPolicy.getDefaultInstance()); } } |