Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add missed files #241

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ out/
# Gradle files
.gradle/
build/
!aosp/builder-model/src/main/java/com/android/build

# Local configuration file (sdk path, etc)
local.properties
Expand Down Expand Up @@ -64,4 +65,4 @@ freeline_project_description.json
!/lib-android-compiler/src/main/java/com/android/build/
!/aosp/gradle-experimental/src/main/java/com/android/build/
/txt.java
!**/src/*
!**/src/*
32 changes: 32 additions & 0 deletions aosp/builder-model/src/main/java/com/android/build/FilterData.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
/*
* Copyright (C) 2014 The Android Open Source Project
*
* 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.android.build;

import com.android.annotations.NonNull;

/**
* Represents a split information, like its type or dimension (density, abi, language...) and
* the filter value (like hdpi for a density split type).
*/
public interface FilterData {

@NonNull
String getIdentifier();

@NonNull
String getFilterType();
}
39 changes: 39 additions & 0 deletions aosp/builder-model/src/main/java/com/android/build/OutputFile.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/*
* Copyright (C) 2014 The Android Open Source Project
*
* 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.android.build;

import com.android.annotations.NonNull;

import java.io.File;

/** An output with an associated set of filters. */
@Deprecated
public interface OutputFile extends VariantOutput {

/**
* Returns the output file for this artifact's output.
* Depending on whether the project is an app or a library project, this could be an apk or
* an aar file. If this {@link OutputFile} has filters, this is a split
* APK.
*
* For test artifact for a library project, this would also be an apk.
*
* @return the output file.
*/
@NonNull
File getOutputFile();
}
101 changes: 101 additions & 0 deletions aosp/builder-model/src/main/java/com/android/build/VariantOutput.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
/*
* Copyright (C) 2014 The Android Open Source Project
*
* 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.android.build;

import com.android.annotations.NonNull;

import java.util.Collection;

/** basic variant output information */
@Deprecated
public interface VariantOutput {

/** An object representing the lack of filter. */
String NO_FILTER = null;

/**
* Type of package file, either the main APK or a full split APK file containing resources for a
* particular split dimension.
*/
enum OutputType {
MAIN,
FULL_SPLIT
}

/**
* String representation of the OutputType enum which can be used for remote-able interfaces.
*/
String MAIN = OutputType.MAIN.name();

String FULL_SPLIT = OutputType.FULL_SPLIT.name();

/** Split dimension type */
enum FilterType {
DENSITY,
ABI,
LANGUAGE
}

/**
* String representations of the FilterType enum which can be used for remote-able interfaces.Ap
*/
String DENSITY = FilterType.DENSITY.name();

String ABI = FilterType.ABI.name();
String LANGUAGE = FilterType.LANGUAGE.name();

/** Returns the output type of the referenced APK. */
@NonNull
String getOutputType();

/**
* Returns the split dimensions the referenced APK was created with. Each collection's value is
* the string representation of an element of the {@link FilterType} enum.
*/
@NonNull
Collection<String> getFilterTypes();

/** Returns all the split information used to create the APK. */
@NonNull
Collection<FilterData> getFilters();

/**
* Returns the main file for this artifact which can be either the {@link
* OutputType#MAIN} or {@link
* OutputType#FULL_SPLIT}
*/
@NonNull
OutputFile getMainOutputFile();

/**
* All the output files for this artifacts, contains the main APK and optionally a list of split
* APKs.
*/
@NonNull
@Deprecated
Collection<? extends OutputFile> getOutputs();

/**
* Returns the version code for this output.
*
* <p>This is convenient method that returns the final version code whether it's coming from the
* override set in the output or from the variant's merged flavor.
*
* @return the version code.
*/
int getVersionCode();
}