001 002package com.commercetools.api.predicates.query.business_unit; 003 004import java.util.function.Function; 005 006import com.commercetools.api.predicates.query.*; 007 008public class BusinessUnitQueryBuilderDsl { 009 public BusinessUnitQueryBuilderDsl() { 010 } 011 012 public static BusinessUnitQueryBuilderDsl of() { 013 return new BusinessUnitQueryBuilderDsl(); 014 } 015 016 public StringComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> id() { 017 return new StringComparisonPredicateBuilder<>(BinaryQueryPredicate.of().left(new ConstantQueryPredicate("id")), 018 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 019 } 020 021 public LongComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> version() { 022 return new LongComparisonPredicateBuilder<>( 023 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("version")), 024 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 025 } 026 027 public DateTimeComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> createdAt() { 028 return new DateTimeComparisonPredicateBuilder<>( 029 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("createdAt")), 030 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 031 } 032 033 public DateTimeComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> lastModifiedAt() { 034 return new DateTimeComparisonPredicateBuilder<>( 035 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("lastModifiedAt")), 036 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 037 } 038 039 public CombinationQueryPredicate<BusinessUnitQueryBuilderDsl> lastModifiedBy( 040 Function<com.commercetools.api.predicates.query.common.LastModifiedByQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.common.LastModifiedByQueryBuilderDsl>> fn) { 041 return new CombinationQueryPredicate<>( 042 ContainerQueryPredicate.of() 043 .parent(ConstantQueryPredicate.of().constant("lastModifiedBy")) 044 .inner(fn.apply(com.commercetools.api.predicates.query.common.LastModifiedByQueryBuilderDsl.of())), 045 BusinessUnitQueryBuilderDsl::of); 046 } 047 048 public CombinationQueryPredicate<BusinessUnitQueryBuilderDsl> createdBy( 049 Function<com.commercetools.api.predicates.query.common.CreatedByQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.common.CreatedByQueryBuilderDsl>> fn) { 050 return new CombinationQueryPredicate<>( 051 ContainerQueryPredicate.of() 052 .parent(ConstantQueryPredicate.of().constant("createdBy")) 053 .inner(fn.apply(com.commercetools.api.predicates.query.common.CreatedByQueryBuilderDsl.of())), 054 BusinessUnitQueryBuilderDsl::of); 055 } 056 057 public StringComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> key() { 058 return new StringComparisonPredicateBuilder<>(BinaryQueryPredicate.of().left(new ConstantQueryPredicate("key")), 059 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 060 } 061 062 public StringComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> status() { 063 return new StringComparisonPredicateBuilder<>( 064 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("status")), 065 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 066 } 067 068 public CombinationQueryPredicate<BusinessUnitQueryBuilderDsl> stores( 069 Function<com.commercetools.api.predicates.query.store.StoreKeyReferenceQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.store.StoreKeyReferenceQueryBuilderDsl>> fn) { 070 return new CombinationQueryPredicate<>(ContainerQueryPredicate.of() 071 .parent(ConstantQueryPredicate.of().constant("stores")) 072 .inner(fn.apply(com.commercetools.api.predicates.query.store.StoreKeyReferenceQueryBuilderDsl.of())), 073 BusinessUnitQueryBuilderDsl::of); 074 } 075 076 public CollectionPredicateBuilder<BusinessUnitQueryBuilderDsl> stores() { 077 return new CollectionPredicateBuilder<>(BinaryQueryPredicate.of().left(new ConstantQueryPredicate("stores")), 078 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 079 } 080 081 public StringComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> storeMode() { 082 return new StringComparisonPredicateBuilder<>( 083 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("storeMode")), 084 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 085 } 086 087 public StringComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> unitType() { 088 return new StringComparisonPredicateBuilder<>( 089 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("unitType")), 090 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 091 } 092 093 public StringComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> name() { 094 return new StringComparisonPredicateBuilder<>( 095 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("name")), 096 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 097 } 098 099 public StringComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> contactEmail() { 100 return new StringComparisonPredicateBuilder<>( 101 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("contactEmail")), 102 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 103 } 104 105 public CombinationQueryPredicate<BusinessUnitQueryBuilderDsl> custom( 106 Function<com.commercetools.api.predicates.query.type.CustomFieldsQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.type.CustomFieldsQueryBuilderDsl>> fn) { 107 return new CombinationQueryPredicate<>( 108 ContainerQueryPredicate.of() 109 .parent(ConstantQueryPredicate.of().constant("custom")) 110 .inner(fn.apply(com.commercetools.api.predicates.query.type.CustomFieldsQueryBuilderDsl.of())), 111 BusinessUnitQueryBuilderDsl::of); 112 } 113 114 public CombinationQueryPredicate<BusinessUnitQueryBuilderDsl> addresses( 115 Function<com.commercetools.api.predicates.query.common.AddressQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.common.AddressQueryBuilderDsl>> fn) { 116 return new CombinationQueryPredicate<>( 117 ContainerQueryPredicate.of() 118 .parent(ConstantQueryPredicate.of().constant("addresses")) 119 .inner(fn.apply(com.commercetools.api.predicates.query.common.AddressQueryBuilderDsl.of())), 120 BusinessUnitQueryBuilderDsl::of); 121 } 122 123 public CollectionPredicateBuilder<BusinessUnitQueryBuilderDsl> addresses() { 124 return new CollectionPredicateBuilder<>(BinaryQueryPredicate.of().left(new ConstantQueryPredicate("addresses")), 125 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 126 } 127 128 public StringCollectionPredicateBuilder<BusinessUnitQueryBuilderDsl> shippingAddressIds() { 129 return new StringCollectionPredicateBuilder<>( 130 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("shippingAddressIds")), 131 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 132 } 133 134 public StringComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> defaultShippingAddressId() { 135 return new StringComparisonPredicateBuilder<>( 136 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("defaultShippingAddressId")), 137 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 138 } 139 140 public StringCollectionPredicateBuilder<BusinessUnitQueryBuilderDsl> billingAddressIds() { 141 return new StringCollectionPredicateBuilder<>( 142 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("billingAddressIds")), 143 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 144 } 145 146 public StringComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> defaultBillingAddressId() { 147 return new StringComparisonPredicateBuilder<>( 148 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("defaultBillingAddressId")), 149 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 150 } 151 152 public StringComparisonPredicateBuilder<BusinessUnitQueryBuilderDsl> associateMode() { 153 return new StringComparisonPredicateBuilder<>( 154 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("associateMode")), 155 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 156 } 157 158 public CombinationQueryPredicate<BusinessUnitQueryBuilderDsl> associates( 159 Function<com.commercetools.api.predicates.query.business_unit.AssociateQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.business_unit.AssociateQueryBuilderDsl>> fn) { 160 return new CombinationQueryPredicate<>(ContainerQueryPredicate.of() 161 .parent(ConstantQueryPredicate.of().constant("associates")) 162 .inner(fn.apply(com.commercetools.api.predicates.query.business_unit.AssociateQueryBuilderDsl.of())), 163 BusinessUnitQueryBuilderDsl::of); 164 } 165 166 public CollectionPredicateBuilder<BusinessUnitQueryBuilderDsl> associates() { 167 return new CollectionPredicateBuilder<>( 168 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("associates")), 169 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 170 } 171 172 public CombinationQueryPredicate<BusinessUnitQueryBuilderDsl> inheritedAssociates( 173 Function<com.commercetools.api.predicates.query.business_unit.InheritedAssociateQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.business_unit.InheritedAssociateQueryBuilderDsl>> fn) { 174 return new CombinationQueryPredicate<>( 175 ContainerQueryPredicate.of() 176 .parent(ConstantQueryPredicate.of().constant("inheritedAssociates")) 177 .inner(fn.apply( 178 com.commercetools.api.predicates.query.business_unit.InheritedAssociateQueryBuilderDsl.of())), 179 BusinessUnitQueryBuilderDsl::of); 180 } 181 182 public CollectionPredicateBuilder<BusinessUnitQueryBuilderDsl> inheritedAssociates() { 183 return new CollectionPredicateBuilder<>( 184 BinaryQueryPredicate.of().left(new ConstantQueryPredicate("inheritedAssociates")), 185 p -> new CombinationQueryPredicate<>(p, BusinessUnitQueryBuilderDsl::of)); 186 } 187 188 public CombinationQueryPredicate<BusinessUnitQueryBuilderDsl> parentUnit( 189 Function<com.commercetools.api.predicates.query.business_unit.BusinessUnitKeyReferenceQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.business_unit.BusinessUnitKeyReferenceQueryBuilderDsl>> fn) { 190 return new CombinationQueryPredicate<>(ContainerQueryPredicate.of() 191 .parent(ConstantQueryPredicate.of().constant("parentUnit")) 192 .inner(fn.apply( 193 com.commercetools.api.predicates.query.business_unit.BusinessUnitKeyReferenceQueryBuilderDsl.of())), 194 BusinessUnitQueryBuilderDsl::of); 195 } 196 197 public CombinationQueryPredicate<BusinessUnitQueryBuilderDsl> topLevelUnit( 198 Function<com.commercetools.api.predicates.query.business_unit.BusinessUnitKeyReferenceQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.business_unit.BusinessUnitKeyReferenceQueryBuilderDsl>> fn) { 199 return new CombinationQueryPredicate<>(ContainerQueryPredicate.of() 200 .parent(ConstantQueryPredicate.of().constant("topLevelUnit")) 201 .inner(fn.apply( 202 com.commercetools.api.predicates.query.business_unit.BusinessUnitKeyReferenceQueryBuilderDsl.of())), 203 BusinessUnitQueryBuilderDsl::of); 204 } 205 206 public CombinationQueryPredicate<BusinessUnitQueryBuilderDsl> asCompany( 207 Function<com.commercetools.api.predicates.query.business_unit.CompanyQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.business_unit.CompanyQueryBuilderDsl>> fn) { 208 return new CombinationQueryPredicate<>( 209 fn.apply(com.commercetools.api.predicates.query.business_unit.CompanyQueryBuilderDsl.of()), 210 BusinessUnitQueryBuilderDsl::of); 211 } 212 213 public CombinationQueryPredicate<BusinessUnitQueryBuilderDsl> asDivision( 214 Function<com.commercetools.api.predicates.query.business_unit.DivisionQueryBuilderDsl, CombinationQueryPredicate<com.commercetools.api.predicates.query.business_unit.DivisionQueryBuilderDsl>> fn) { 215 return new CombinationQueryPredicate<>( 216 fn.apply(com.commercetools.api.predicates.query.business_unit.DivisionQueryBuilderDsl.of()), 217 BusinessUnitQueryBuilderDsl::of); 218 } 219}