Idioma

AppSearchSchema.Builder.AddParentType(String) Método

Definição

Adiciona um tipo pai ao tipo de esquema para polimorfismo, de modo que o tipo de esquema seja considerado como um subtipo de parentSchemaType.

[Android.Runtime.Register("addParentType", "(Ljava/lang/String;)Landroid/app/appsearch/AppSearchSchema$Builder;", "", ApiSince=35)]
public Android.App.AppSearch.AppSearchSchema.Builder AddParentType(string parentSchemaType);
[<Android.Runtime.Register("addParentType", "(Ljava/lang/String;)Landroid/app/appsearch/AppSearchSchema$Builder;", "", ApiSince=35)>]
member this.AddParentType : string -> Android.App.AppSearch.AppSearchSchema.Builder

Parâmetros

parentSchemaType
String

Retornos

Atributos

Comentários

Adiciona um tipo pai ao tipo de esquema para polimorfismo, de modo que o tipo de esquema seja considerado como um subtipo de parentSchemaType. As relações de subtipo são automaticamente consideradas transitivas, portanto, os chamadores só são obrigados a fornecer pais diretos. Especificamente, se T1 <: T2 e T2 <: T3 forem conhecidos, T1 <: T3 será inferido automaticamente, onde <: é o símbolo do subtipo. Atualmente, há suporte para polimorfismo das seguintes maneiras: filtros de pesquisa em um tipo pai também serão estendidos automaticamente para os tipos filho. Por exemplo, se Artista <: Pessoa, uma pesquisa com um filtro no tipo Pessoa (chamando SearchSpec.Builder.addFilterSchemas) também incluirá documentos do tipo Artista no resultado da pesquisa. Na API de projeção, os caminhos de propriedade para o projeto especificados para um tipo pai também serão estendidos automaticamente para os tipos filho. Se um tipo pai e um de seu tipo filho forem especificados na API de projeção, os caminhos do tipo pai serão mesclados no filho. Para obter mais detalhes sobre projeção, consulte SearchSpec.Builder.addProjection. Uma propriedade de documento definida como tipo U tem permissão para ser definida com um documento do tipo T, desde que T <: U, mas observe que o índice será baseado apenas no tipo definido, que é U. Por exemplo, considere um documento do tipo "Empresa" com um campo "funcionários" repetido do tipo "Pessoa". Podemos adicionar funcionários do tipo "Pessoa" ou tipo "Artista" ou ambos a essa propriedade, desde que "Artista" seja um subtipo de "Pessoa". No entanto, o índice da propriedade "funcionários" será baseado no que é definido em "Pessoa", mesmo para um documento adicionado do tipo "Artista". Os subtipos devem atender aos seguintes requisitos. Uma violação dos requisitos fará com que AppSearchSession.setSchema gere um AppSearchException com o código de resultado de AppSearchResult.RESULT_INVALID_ARGUMENT. Considere um artista de tipo e um tipo de Pessoa, e o Artista afirma ser um subtipo de Pessoa, em seguida: Cada propriedade em Pessoa deve ter uma propriedade correspondente em Artist com o mesmo nome. Cada propriedade não documental em Person deve ter o mesmo tipo que o tipo da propriedade correspondente no Artist. Por exemplo, se "age" for uma propriedade inteiro em Person, "age" também deverá ser uma propriedade inteiro no Artist, em vez de uma cadeia de caracteres. O tipo de esquema de cada propriedade de documento no Artista deve ser um subtipo do tipo de esquema da propriedade de documento correspondente em Person, se essa propriedade existir em Person. Por exemplo, se "awards" for uma propriedade documental do tipo Award in Person, o tipo da propriedade "awards" no Artist deverá ser um subtipo de Award, por exemplo, ArtAward. Observe que cada tipo é um subtipo de si mesmo. Cada propriedade em Artist deve ter uma cardinalidade mais rigorosa ou igual à cardinalidade da propriedade correspondente em Person, se essa propriedade existir em Person. Por exemplo, se "awards" for uma propriedade em Person of cardinality OPTIONAL, a cardinalidade da propriedade "awards" no Artist só poderá ser OBRIGATÓRIA ou OPCIONAL. Regra: OBRIGATÓRIO < OPCIONAL < REPETIDO. Não há outras imposição nas propriedades correspondentes no Artist, como tipo de índice, tipo de token, etc. Essas configurações podem ser substituídas com segurança. Um tipo pode ser definido para ter vários pais, mas deve ser compatível com cada um de seus pais com base nas regras acima. Por exemplo, se o LocalBusiness for definido como um subtipo do Place e da Organização, a compatibilidade do LocalBusiness com o Place e a compatibilidade do LocalBusiness com a Organização serão verificadas.

Referência do Android para android.app.appsearch.AppSearchSchema.Builder.addParentType.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.

Aplica-se a