commit
75e4a11116
@ -28,9 +28,7 @@ cli-linux
|
||||
**/obj/
|
||||
**/node_modules/
|
||||
**/bower_components/
|
||||
**/wwwroot/lib/
|
||||
!**/wwwroot/lib/signalr/*
|
||||
!**/wwwroot/lib/toastr/*
|
||||
**/wwwroot/lib/*
|
||||
global.json
|
||||
**/appsettings.localhost.json
|
||||
src/Web/WebSPA/wwwroot/
|
67
CONTRIBUTING.md
Normal file
67
CONTRIBUTING.md
Normal file
@ -0,0 +1,67 @@
|
||||
# How to contribute to eShopOnContainers
|
||||
|
||||
This repo is a reference and learning resource and everyone is invited to contribute, however not all PRs will be accepted into the main branch (**`dev`**).
|
||||
|
||||
There's a general development strategy that's driven by @CESARDELATORRE, who chooses, or defines criteria for choosing, the issues to include in the codebase, given a bunch of constraints and other guidelines.
|
||||
|
||||
However you can always get in touch with him, if you want to implement some general-interest feature in your repo and have it referenced from the [documentation](https://docs.microsoft.com/dotnet/standard/microservices-architecture/) or the [Microservices eBook](https://aka.ms/microservicesebook/).
|
||||
|
||||
## Coding Standards
|
||||
|
||||
There are no explicit coding standards so pay attention to the general coding style, that's (mostly) used everywhere.
|
||||
|
||||
However, there's only one **REALLY** important rule: **use spaces for indenting** 😉.
|
||||
|
||||
## Development Process
|
||||
|
||||
In order to help manage community contributions and avoid conflicts, there's a [Development project](https://github.com/dotnet-architecture/eShopOnContainers/projects/3) in this repo, to track assignments to any significant development effort.
|
||||
|
||||
Great but... **what's "significant"**?
|
||||
|
||||
That's not too easy to define and there are no clear criteria right now but, probably, changing "a couple" lines of code in one file would not qualify while changing "a bunch" of files would.
|
||||
|
||||
We'll all be learning in the process so we'll figure it out somehow.
|
||||
|
||||
### General Steps
|
||||
|
||||
1. Issues are managed as usual with the regular issues list, just like any other repo.
|
||||
|
||||
2. Once an issue is marked as a bug, enhancement, new feature or whatever needs development work, it will be labeled as a **backlog-item** and included as the last item in the Backlog project column.
|
||||
|
||||
3. Community members can propose themselves to code an issue.
|
||||
|
||||
4. @CESARDELATORRE/collaborators will prioritize the backlog items and arrange them in the **Backlog** column, so that the items in the top of the list are implemented first.
|
||||
|
||||
5. @CESARDELATORRE/collaborators will review the issues and select the ones approved to begin development with, and move them to the **Approved** column.
|
||||
|
||||
6. Issues in the **Approved** column can be assigned to a **collaborator** or to a **community member** who would then begin working on the issue and submit a PR as usual.
|
||||
|
||||
## Tests
|
||||
|
||||
There's not a tests policy in the project at this moment, but it'll be greatly appreciated if you include them within the [updated test structure](./test/readme.md).
|
||||
|
||||
## Forks and Branches
|
||||
|
||||
All contributions must be submitted as a [Pull Request (PR)](https://help.github.com/articles/about-pull-requests/) so you need to [fork this repo](https://help.github.com/articles/fork-a-repo/) on your GitHub account.
|
||||
|
||||
The main branches are **`dev`** and **`master`**:
|
||||
|
||||
- **`dev`**: Contains the latest code **and it is the branch actively developed**.
|
||||
**All PRs must be against `dev` branch to be considered**. This branch is developed using .NET Core 2.x
|
||||
|
||||
- **`master`**: Synced from time to time from **`dev`**. It contains "stable" code.
|
||||
(**Keep in mind "stable" does not mean PRODUCTION-READY!**)
|
||||
|
||||
- Any other branch is considered temporary and could be deleted at any time. Do not submit any PR to them!
|
||||
|
||||
## DISCLAIMER - This is not a PRODUCTION-READY TEMPLATE for microservices
|
||||
eShopOnContainers is a reference application to **showcase architectural patterns** for developing microservices applications on .NET Core. **IT IS NOT A PRODUCTION-READY TEMPLATE** to start real-world application. In fact, the application is in a **permanent beta state**, as it’s also used to test new potentially interesting technologies as they show up.
|
||||
|
||||
Since this is a learning resource, some design decisions have favored simplicity to convey a pattern, over production-grade robustness.
|
||||
|
||||
## Suggestions
|
||||
|
||||
We hope this helps us all to work better and avoid some of the problems/frustrations of working in such a large community.
|
||||
|
||||
We'd also appreciate any comments or ideas to improve this.
|
||||
|
20
README.md
20
README.md
@ -17,12 +17,12 @@ The **dockerfiles** in the solution have also been updated and now support [**Do
|
||||
>**PLEASE** Read our [branch guide](./branch-guide.md) to know about our branching policy
|
||||
|
||||
> ### DISCLAIMER
|
||||
> **IMPORTANT:** The current state of this sample application is **BETA**, because we are constantly evolving towards new released technologies. Therefore, many areas could be improved and change significantly while refactoring current code and implementing new features. Feedback with improvements and pull requests from the community will be highly appreciated and accepted.
|
||||
> **IMPORTANT:** The current state of this sample application is **BETA**, because we are constantly evolving towards newly released technologies. Therefore, many areas could be improved and change significantly while refactoring the current code and implementing new features. Feedback with improvements and pull requests from the community will be highly appreciated and accepted.
|
||||
>
|
||||
> This reference application proposes a simplified microservice oriented architecture implementation to introduce technologies like .NET Core with Docker containers through a comprehensive application. The chosen domain is an eShop/eCommerce but simply because it is a well-know domain by most people/developers.
|
||||
However, this sample application should not be considered as an "eCommerce reference model", at all. The implemented business domain might not be ideal from an eCommerce business point of view. It is neither trying to solve all the problems in a large, scalable and mission-critical distributed system. It is just a bootstrap for developers to easily get started in the world of Docker containers and microservices with .NET Core.
|
||||
> This reference application proposes a simplified microservice oriented architecture implementation to introduce technologies like .NET Core with Docker containers through a comprehensive application. The chosen domain is eShop/eCommerce but simply because it is a well-known domain by most people/developers.
|
||||
However, this sample application should not be considered as an "eCommerce reference model" at all. The implemented business domain might not be ideal from an eCommerce business point of view. It is neither trying to solve all the problems in a large, scalable and mission-critical distributed system. It is just a bootstrap for developers to easily get started in the world of Docker containers and microservices with .NET Core.
|
||||
> <p>For example, the next step after running the solution in the local dev PC and understanding Docker containers and microservices development with .NET Core, is to select a microservice cluster/orchestrator like Kubernetes in Azure (AKS) or Azure Service Fabric, both environments tested and supported by this solution.
|
||||
> Additional steps would be to move your databases to HA cloud services (like Azure SQL Database), or switch your EventBus to use Azure Service Bus (instead of bare-bone RabbitMQ) or any other production ready Service Bus in the market.
|
||||
> Additional steps would be to move your databases to HA cloud services (like Azure SQL Database) or switch your EventBus to use Azure Service Bus (instead of bare-bone RabbitMQ) or any other production-ready Service Bus in the market.
|
||||
|
||||

|
||||
|
||||
@ -39,7 +39,7 @@ The architecture proposes a microservice oriented architecture implementation wi
|
||||
> ### Important Note on API Gateways and published APIs
|
||||
> Since April 2018, we have introduced the implementation of the [API Gateway pattern](http://microservices.io/patterns/apigateway.html) and [Backend-For-Front-End (BFF) pattern](https://samnewman.io/patterns/architectural/bff/) in eShopOnContainers architecture, so you can filter and publish simplified APIs and URIs and apply additional security in that tier while hiding/securing the internal microservices to the client apps or outside consumers. These sample API Gateways in eShopOnContainers are based on [Ocelot](https://github.com/ThreeMammals/Ocelot), an OSS lightweight API Gateway solution explained [here](http://threemammals.com/ocelot). The deployed API Gateways are autonomous and can be deployed as your own custom microservices/containers, as it is currently done in eShopOnContainers, so you can test it even in a simple development environment with just Docker engine or deploy it into orchestrators like Kubernetes in AKS or Service Fabric.
|
||||
|
||||
> For your production-ready architecture you can either keep using [Ocelot](https://github.com/ThreeMammals/Ocelot) which is simple and easy to use and used in production by significant companies or if you need further functionality and a much richer set of features suittable for commercial APIs, you can also substitute those API Gateways and use [Azure API Management](https://azure.microsoft.com/en-us/services/api-management/) or any other commercial API Gateway, as shown in the following image.
|
||||
> For your production-ready architecture you can either keep using [Ocelot](https://github.com/ThreeMammals/Ocelot) which is simple and easy to use and used in production by significant companies or if you need further functionality and a much richer set of features suitable for commercial APIs, you can also substitute those API Gateways and use [Azure API Management](https://azure.microsoft.com/en-us/services/api-management/) or any other commercial API Gateway, as shown in the following image.
|
||||
|
||||
<p>
|
||||
<img src="img/eShopOnContainers-Architecture-With-Azure-API-Management.png">
|
||||
@ -56,9 +56,9 @@ The architecture proposes a microservice oriented architecture implementation wi
|
||||
<p>
|
||||
|
||||
> ### Important Note on Database Servers/Containers
|
||||
> In this solution's current configuration for a development environment, the SQL databases are automatically deployed with sample data into a single SQL Server container (a single shared Docker container for SQL databases) so the whole solution can be up and running without any dependency to any cloud or specific server. Each database could also be deployed as a single Docker container, but then you'd need more than 8GB of RAM assigned to Docker in your development machine in order to be able to run 3 SQL Server Docker containers in your Docker Linux host in "Docker for Windows" or "Docker for Mac" development environments.
|
||||
> In this solution's current configuration for a development environment, the SQL databases are automatically deployed with sample data into a single SQL Server container (a single shared Docker container for SQL databases) so the whole solution can be up and running without any dependency to any cloud or a specific server. Each database could also be deployed as a single Docker container, but then you'd need more than 8GB of RAM assigned to Docker in your development machine in order to be able to run 3 SQL Server Docker containers in your Docker Linux host in "Docker for Windows" or "Docker for Mac" development environments.
|
||||
> <p> A similar case is defined in regard to Redis cache running as a container for the development environment. Or a No-SQL database (MongoDB) running as a container.
|
||||
> <p> However, in a real production environment it is recommended to have your databases (SQL Server, Redis, and the NO-SQL database, in this case) in HA (High Available) services like Azure SQL Database, Redis as a service and Azure CosmosDB instead the MongoDB container (as both systems share the same access protocol). If you want to change to a production configuration, you'll just need to change the connection strings once you have set up the servers in a HA cloud or on-premises.
|
||||
> <p> However, in a real production environment it is recommended to have your databases (SQL Server, Redis, and the NO-SQL database, in this case) in HA (High Available) services like Azure SQL Database, Redis as a service and Azure CosmosDB instead the MongoDB container (as both systems share the same access protocol). If you want to change to a production configuration, you'll just need to change the connection strings once you have set up the servers in an HA cloud or on-premises.
|
||||
|
||||
## Related documentation and guidance
|
||||
While developing this reference application, we've been creating a reference <b>Guide/eBook</b> focusing on <b>architecting and developing containerized and microservice based .NET Applications</b> (download link available below) which explains in detail how to develop this kind of architectural style (microservices, Docker containers, Domain-Driven Design for certain microservices) plus other simpler architectural styles, like monolithic apps that can also live as Docker containers.
|
||||
@ -70,18 +70,18 @@ You can download them and start reviewing these Guides/eBooks here:
|
||||
| Architecting & Developing | Containers Lifecycle & CI/CD | App patterns with Xamarin.Forms |
|
||||
| ------------ | ------------| ------------|
|
||||
| <a href='https://aka.ms/microservicesebook'><img src="img/ebook_arch_dev_microservices_containers_cover.png"> </a> | <a href='https://aka.ms/dockerlifecycleebook'> <img src="img/ebook_containers_lifecycle.png"> </a> | <a href='https://aka.ms/xamarinpatternsebook'> <img src="img/xamarin-enterprise-patterns-ebook-cover-small.png"> </a> |
|
||||
| <sup> <a href='https://aka.ms/microservicesebook'>**Download .PDF** (2nd Edition)</a> </sup> | <sup> <a href='https://aka.ms/dockerlifecycleebook'>**Download** </a> </sup> | <sup> <a href='https://aka.ms/xamarinpatternsebook'>**Download** </a> </sup> |
|
||||
| <sup> <a href='https://aka.ms/microservicesebook'>**Download .PDF** (v2.1 Edition)</a> </sup> | <sup> <a href='https://aka.ms/dockerlifecycleebook'>**Download** </a> </sup> | <sup> <a href='https://aka.ms/xamarinpatternsebook'>**Download** </a> </sup> |
|
||||
|
||||
Download in other formats (**eReaders** like **MOBI**, **EPUB**) and other eBooks at the [.NET Architecture center](http://dot.net/architecture).
|
||||
|
||||
Send feedback to [dotnet-architecture-ebooks-feedback@service.microsoft.com](dotnet-architecture-ebooks-feedback@service.microsoft.com)
|
||||
|
||||
However, we encourage to download and review the [Architecting and Developing Microservices eBook](https://aka.ms/microservicesebook) because the architectural styles and architectural patterns and technologies explained in the guidance are using this reference application when explaining many pattern implementations, so you'll understand much better the context, design and decisions taken in the current architecture and internal designs.
|
||||
However, we encourage you to download and review the [Architecting and Developing Microservices eBook](https://aka.ms/microservicesebook) because the architectural styles and architectural patterns and technologies explained in the guide are using this reference application when explaining many pattern implementations, so you'll understand the context, design and decisions taken in the current architecture and internal designs much better.
|
||||
|
||||
## Overview of the application code
|
||||
In this repo you can find a sample reference application that will help you to understand how to implement a microservice architecture based application using <b>.NET Core</b> and <b>Docker</b>.
|
||||
|
||||
The example business domain or scenario is based on an eShop or eCommerce which is implemented as a multi-container application. Each container is a microservice deployment (like the basket-microservice, catalog-microservice, ordering-microservice and the identity-microservice) which are developed using ASP.NET Core running on .NET Core so they can run either on Linux Containers and Windows Containers.
|
||||
The example business domain or scenario is based on an eShop or eCommerce which is implemented as a multi-container application. Each container is a microservice deployment (like the basket-microservice, catalog-microservice, ordering-microservice and the identity-microservice) which is developed using ASP.NET Core running on .NET Core so they can run either on Linux Containers and Windows Containers.
|
||||
The screenshot below shows the VS Solution structure for those microservices/containers and client apps.
|
||||
|
||||
- (*Recommended when getting started*) Open <b>eShopOnContainers-ServicesAndWebApps.sln</b> for a solution containing just the server-side projects related to the microservices and web applications.
|
||||
|
@ -8,4 +8,4 @@ if ([string]::IsNullOrEmpty($imageTag)) {
|
||||
|
||||
Write-Host "Building images with tag $imageTag" -ForegroundColor Yellow
|
||||
$env:TAG=$imageTag
|
||||
docker-compose -f "$scriptPath\..\docker-compose.yml" build
|
||||
docker-compose -f "$scriptPath\..\docker-compose.yml" -f "$scriptPath\..\docker-compose.windows.yml" build
|
@ -23,6 +23,7 @@ if ($buildBits) {
|
||||
$env:ESHOP_EXTERNAL_DNS_NAME_OR_IP = "10.0.75.1"
|
||||
$env:ESHOP_AZURE_STORAGE_CATALOG_URL ="http://10.0.75.1:5101/api/v1/catalog/items/[0]/pic/"
|
||||
$env:ESHOP_AZURE_STORAGE_MARKETING_URL ="http://10.0.75.1:5110/api/v1/campaigns/[0]/pic/"
|
||||
$env:ESHOP_OCELOT_VOLUME_SPEC ="C:\app\configuration"
|
||||
|
||||
if (-Not $customEventBusLoginPassword) {
|
||||
docker-compose -f "$rootPath\docker-compose.yml" -f "$rootPath\docker-compose.override.yml" -f "$rootPath\docker-compose.windows.yml" -f "$rootPath\docker-compose.override.windows.yml" up
|
||||
|
@ -7,7 +7,46 @@ version: '3.4'
|
||||
# An external IP or DNS name has to be used (instead localhost and the 10.0.75.1 IP) when testing the Web apps and the Xamarin apps from remote machines/devices using the same WiFi, for instance.
|
||||
|
||||
services:
|
||||
|
||||
sql.data:
|
||||
environment:
|
||||
- SA_PASSWORD=Pass@word
|
||||
- ACCEPT_EULA=Y
|
||||
ports:
|
||||
- "5433:1433" # Important: In a production environment your should remove the external port
|
||||
|
||||
nosql.data:
|
||||
ports:
|
||||
- "27017:27017" # Important: In a production environment your should remove the external port
|
||||
|
||||
basket.data:
|
||||
ports:
|
||||
- "6379:6379" # Important: In a production environment your should remove the external port
|
||||
|
||||
rabbitmq:
|
||||
ports:
|
||||
- "15672:15672" # Important: In a production environment your should remove the external port
|
||||
- "5672:5672" # Important: In a production environment your should remove the external port
|
||||
|
||||
identity.api:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
- ASPNETCORE_URLS=http://0.0.0.0:80
|
||||
- SpaClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5104
|
||||
- XamarinCallback=http://${ESHOP_PROD_EXTERNAL_DNS_NAME_OR_IP}:5105/xamarincallback #localhost do not work for UWP login, so we have to use "external" IP always
|
||||
- ConnectionString=${ESHOP_AZURE_IDENTITY_DB:-Server=sql.data;Database=Microsoft.eShopOnContainers.Service.IdentityDb;User Id=sa;Password=Pass@word}
|
||||
- MvcClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5100 #Local: You need to open your local dev-machine firewall at range 5100-5110.
|
||||
- LocationApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5109
|
||||
- MarketingApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5110
|
||||
- BasketApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5103
|
||||
- OrderingApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5102
|
||||
- MobileShoppingAggClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5120
|
||||
- WebShoppingAggClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5121
|
||||
- UseCustomizationData=True
|
||||
- ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
|
||||
- OrchestratorType=${ORCHESTRATOR_TYPE}
|
||||
ports:
|
||||
- "5105:80"
|
||||
|
||||
basket.api:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
@ -47,26 +86,6 @@ services:
|
||||
- "5101:80" # Important: In a production environment your should remove the external port (5101) kept here for microservice debugging purposes.
|
||||
# The API Gateway redirects and access through the internal port (80).
|
||||
|
||||
identity.api:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
- ASPNETCORE_URLS=http://0.0.0.0:80
|
||||
- SpaClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5104
|
||||
- XamarinCallback=http://${ESHOP_PROD_EXTERNAL_DNS_NAME_OR_IP}:5105/xamarincallback #localhost do not work for UWP login, so we have to use "external" IP always
|
||||
- ConnectionString=${ESHOP_AZURE_IDENTITY_DB:-Server=sql.data;Database=Microsoft.eShopOnContainers.Service.IdentityDb;User Id=sa;Password=Pass@word}
|
||||
- MvcClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5100 #Local: You need to open your local dev-machine firewall at range 5100-5110.
|
||||
- LocationApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5109
|
||||
- MarketingApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5110
|
||||
- BasketApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5103
|
||||
- OrderingApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5102
|
||||
- MobileShoppingAggClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5120
|
||||
- WebShoppingAggClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5121
|
||||
- UseCustomizationData=True
|
||||
- ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
|
||||
- OrchestratorType=${ORCHESTRATOR_TYPE}
|
||||
ports:
|
||||
- "5105:80"
|
||||
|
||||
ordering.api:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
@ -131,66 +150,6 @@ services:
|
||||
- "5110:80" # Important: In a production environment your should remove the external port (5110) kept here for microservice debugging purposes.
|
||||
# The API Gateway redirects and access through the internal port (80).
|
||||
|
||||
webspa:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
- ASPNETCORE_URLS=http://0.0.0.0:80
|
||||
- IdentityUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5105 #Local: You need to open your local dev-machine firewall at range 5100-5105. at range 5100-5105.
|
||||
- PurchaseUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5202
|
||||
- MarketingUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5203
|
||||
- CatalogUrlHC=http://catalog.api/hc
|
||||
- OrderingUrlHC=http://ordering.api/hc
|
||||
- IdentityUrlHC=http://identity.api/hc #Local: Use ${ESHOP_PROD_EXTERNAL_DNS_NAME_OR_IP}, if using external IP or DNS name from browser.
|
||||
- BasketUrlHC=http://basket.api/hc
|
||||
- MarketingUrlHC=http://marketing.api/hc
|
||||
- PaymentUrlHC=http://payment.api/hc
|
||||
- UseCustomizationData=True
|
||||
- ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
|
||||
- OrchestratorType=${ORCHESTRATOR_TYPE}
|
||||
- SignalrHubUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5202
|
||||
ports:
|
||||
- "5104:80"
|
||||
|
||||
webmvc:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
- ASPNETCORE_URLS=http://0.0.0.0:80
|
||||
- PurchaseUrl=http://webshoppingapigw
|
||||
- IdentityUrl=http://10.0.75.1:5105 # Local Mac: Use http://docker.for.mac.localhost:5105 || Local Windows: Use 10.0.75.1 in a "Docker for Windows" environment, if using "localhost" from browser. || #Remote access: Use ${ESHOP_EXTERNAL_DNS_NAME_OR_IP} if using external IP or DNS name from browser.
|
||||
- MarketingUrl=http://webmarketingapigw
|
||||
- CatalogUrlHC=http://catalog.api/hc
|
||||
- OrderingUrlHC=http://ordering.api/hc
|
||||
- IdentityUrlHC=http://identity.api/hc #Local: Use ${ESHOP_PROD_EXTERNAL_DNS_NAME_OR_IP}, if using external IP or DNS name from browser.
|
||||
- BasketUrlHC=http://basket.api/hc
|
||||
- MarketingUrlHC=http://marketing.api/hc
|
||||
- PaymentUrlHC=http://payment.api/hc
|
||||
- SignalrHubUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5202
|
||||
- UseCustomizationData=True
|
||||
- ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
|
||||
- OrchestratorType=${ORCHESTRATOR_TYPE}
|
||||
- UseLoadTest=${USE_LOADTEST:-False}
|
||||
ports:
|
||||
- "5100:80"
|
||||
|
||||
webstatus:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
- ASPNETCORE_URLS=http://0.0.0.0:80
|
||||
- CatalogUrl=http://catalog.api/hc
|
||||
- OrderingUrl=http://ordering.api/hc
|
||||
- OrderingBackgroundTasksUrl=http://ordering.backgroundtasks/hc
|
||||
- BasketUrl=http://basket.api/hc
|
||||
- IdentityUrl=http://identity.api/hc
|
||||
- LocationsUrl=http://locations.api/hc
|
||||
- MarketingUrl=http://marketing.api/hc
|
||||
- PaymentUrl=http://payment.api/hc
|
||||
- mvc=http://webmvc/hc
|
||||
- spa=http://webspa/hc
|
||||
- ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
|
||||
- OrchestratorType=${ORCHESTRATOR_TYPE}
|
||||
ports:
|
||||
- "5107:80"
|
||||
|
||||
payment.api:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
@ -223,27 +182,6 @@ services:
|
||||
ports:
|
||||
- "5109:80" # Important: In a production environment your should remove the external port (5109) kept here for microservice debugging purposes.
|
||||
# The API Gateway redirects and access through the internal port (80).
|
||||
|
||||
|
||||
sql.data:
|
||||
environment:
|
||||
- SA_PASSWORD=Pass@word
|
||||
- ACCEPT_EULA=Y
|
||||
ports:
|
||||
- "5433:1433" # Important: In a production environment your should remove the external port
|
||||
|
||||
nosql.data:
|
||||
ports:
|
||||
- "27017:27017" # Important: In a production environment your should remove the external port
|
||||
|
||||
basket.data:
|
||||
ports:
|
||||
- "6379:6379" # Important: In a production environment your should remove the external port
|
||||
|
||||
rabbitmq:
|
||||
ports:
|
||||
- "15672:15672" # Important: In a production environment your should remove the external port
|
||||
- "5672:5672" # Important: In a production environment your should remove the external port
|
||||
|
||||
mobileshoppingapigw:
|
||||
environment:
|
||||
@ -253,6 +191,7 @@ services:
|
||||
- "5200:80"
|
||||
volumes:
|
||||
- ./src/ApiGateways/Mobile.Bff.Shopping/apigw:${ESHOP_OCELOT_VOLUME_SPEC:-/app/configuration}
|
||||
|
||||
mobilemarketingapigw:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
@ -301,6 +240,7 @@ services:
|
||||
ports:
|
||||
- "5121:80" # Important: In a production environment your should remove the external port (5121) kept here for microservice debugging purposes.
|
||||
# The API Gateway redirects and access through the internal port (80).
|
||||
|
||||
ordering.signalrhub:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
@ -315,3 +255,63 @@ services:
|
||||
ports:
|
||||
- "5112:80"
|
||||
|
||||
webstatus:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
- ASPNETCORE_URLS=http://0.0.0.0:80
|
||||
- CatalogUrl=http://catalog.api/hc
|
||||
- OrderingUrl=http://ordering.api/hc
|
||||
- OrderingBackgroundTasksUrl=http://ordering.backgroundtasks/hc
|
||||
- BasketUrl=http://basket.api/hc
|
||||
- IdentityUrl=http://identity.api/hc
|
||||
- LocationsUrl=http://locations.api/hc
|
||||
- MarketingUrl=http://marketing.api/hc
|
||||
- PaymentUrl=http://payment.api/hc
|
||||
- mvc=http://webmvc/hc
|
||||
- spa=http://webspa/hc
|
||||
- ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
|
||||
- OrchestratorType=${ORCHESTRATOR_TYPE}
|
||||
ports:
|
||||
- "5107:80"
|
||||
|
||||
webspa:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
- ASPNETCORE_URLS=http://0.0.0.0:80
|
||||
- IdentityUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5105 #Local: You need to open your local dev-machine firewall at range 5100-5105. at range 5100-5105.
|
||||
- PurchaseUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5202
|
||||
- MarketingUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5203
|
||||
- CatalogUrlHC=http://catalog.api/hc
|
||||
- OrderingUrlHC=http://ordering.api/hc
|
||||
- IdentityUrlHC=http://identity.api/hc #Local: Use ${ESHOP_PROD_EXTERNAL_DNS_NAME_OR_IP}, if using external IP or DNS name from browser.
|
||||
- BasketUrlHC=http://basket.api/hc
|
||||
- MarketingUrlHC=http://marketing.api/hc
|
||||
- PaymentUrlHC=http://payment.api/hc
|
||||
- UseCustomizationData=True
|
||||
- ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
|
||||
- OrchestratorType=${ORCHESTRATOR_TYPE}
|
||||
- SignalrHubUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5202
|
||||
ports:
|
||||
- "5104:80"
|
||||
|
||||
webmvc:
|
||||
environment:
|
||||
- ASPNETCORE_ENVIRONMENT=Development
|
||||
- ASPNETCORE_URLS=http://0.0.0.0:80
|
||||
- PurchaseUrl=http://webshoppingapigw
|
||||
- IdentityUrl=http://10.0.75.1:5105 # Local Mac: Use http://docker.for.mac.localhost:5105 || Local Windows: Use 10.0.75.1 in a "Docker for Windows" environment, if using "localhost" from browser. || #Remote access: Use ${ESHOP_EXTERNAL_DNS_NAME_OR_IP} if using external IP or DNS name from browser.
|
||||
- MarketingUrl=http://webmarketingapigw
|
||||
- CatalogUrlHC=http://catalog.api/hc
|
||||
- OrderingUrlHC=http://ordering.api/hc
|
||||
- IdentityUrlHC=http://identity.api/hc #Local: Use ${ESHOP_PROD_EXTERNAL_DNS_NAME_OR_IP}, if using external IP or DNS name from browser.
|
||||
- BasketUrlHC=http://basket.api/hc
|
||||
- MarketingUrlHC=http://marketing.api/hc
|
||||
- PaymentUrlHC=http://payment.api/hc
|
||||
- SignalrHubUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5202
|
||||
- UseCustomizationData=True
|
||||
- ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
|
||||
- OrchestratorType=${ORCHESTRATOR_TYPE}
|
||||
- UseLoadTest=${USE_LOADTEST:-False}
|
||||
ports:
|
||||
- "5100:80"
|
||||
|
||||
|
@ -5,24 +5,9 @@
|
||||
version: '3.4'
|
||||
|
||||
services:
|
||||
identity.api:
|
||||
build:
|
||||
args:
|
||||
NODE_IMAGE: stefanscherer/node-windows:8.11
|
||||
|
||||
webmvc:
|
||||
build:
|
||||
args:
|
||||
NODE_IMAGE: stefanscherer/node-windows:8.11
|
||||
|
||||
webspa:
|
||||
build:
|
||||
args:
|
||||
NODE_IMAGE: stefanscherer/node-windows:8.11
|
||||
|
||||
sql.data:
|
||||
image: microsoft/mssql-server-windows-developer
|
||||
|
||||
|
||||
nosql.data:
|
||||
image: mongo:windowsservercore
|
||||
|
||||
@ -32,6 +17,21 @@ services:
|
||||
rabbitmq:
|
||||
image: spring2/rabbitmq
|
||||
|
||||
identity.api:
|
||||
build:
|
||||
args:
|
||||
NODE_IMAGE: stefanscherer/node-windows:8.11
|
||||
|
||||
webspa:
|
||||
build:
|
||||
args:
|
||||
NODE_IMAGE: stefanscherer/node-windows:8.11
|
||||
|
||||
webmvc:
|
||||
build:
|
||||
args:
|
||||
NODE_IMAGE: stefanscherer/node-windows:8.11
|
||||
|
||||
|
||||
networks:
|
||||
default:
|
||||
|
@ -9,7 +9,7 @@ services:
|
||||
|
||||
basket.data:
|
||||
image: redis:alpine
|
||||
|
||||
|
||||
rabbitmq:
|
||||
image: rabbitmq:3-management-alpine
|
||||
|
||||
@ -76,7 +76,7 @@ services:
|
||||
dockerfile: src/Services/Payment/Payment.API/Dockerfile
|
||||
depends_on:
|
||||
- rabbitmq
|
||||
|
||||
|
||||
locations.api:
|
||||
image: eshop/locations.api:${TAG:-latest}
|
||||
build:
|
||||
@ -100,7 +100,7 @@ services:
|
||||
- marketing.api
|
||||
- catalog.api
|
||||
- basket.api
|
||||
|
||||
|
||||
mobilemarketingapigw:
|
||||
image: eshop/ocelotapigw:${TAG:-latest}
|
||||
build:
|
||||
@ -115,7 +115,7 @@ services:
|
||||
- marketing.api
|
||||
- catalog.api
|
||||
- basket.api
|
||||
|
||||
|
||||
webshoppingapigw:
|
||||
image: eshop/ocelotapigw:${TAG:-latest}
|
||||
build:
|
||||
@ -207,7 +207,6 @@ services:
|
||||
# - webshoppingapigw
|
||||
# - webmarketingapigw
|
||||
|
||||
|
||||
webmvc:
|
||||
image: eshop/webmvc:${TAG:-latest}
|
||||
build:
|
||||
|
BIN
docs/Decks/BRK3175_CesarDeIaTorre.pptx
Normal file
BIN
docs/Decks/BRK3175_CesarDeIaTorre.pptx
Normal file
Binary file not shown.
BIN
docs/Decks/eShopOnContainers-Architecture-v2.1.pptx
Normal file
BIN
docs/Decks/eShopOnContainers-Architecture-v2.1.pptx
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -26,7 +26,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ordering", "Ordering", "{0B
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{A857AD10-40FF-4303-BEC2-FF1C58D5735E}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Services", "Services", "{EF0337F2-ED00-4643-89FD-EE10863F1870}"
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ServicesTests", "ServicesTests", "{EF0337F2-ED00-4643-89FD-EE10863F1870}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Identity", "Identity", "{24CD3B53-141E-4A07-9B0D-796641E1CF78}"
|
||||
EndProject
|
||||
@ -42,16 +42,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebMVC", "src\Web\WebMVC\We
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.Infrastructure", "src\Services\Ordering\Ordering.Infrastructure\Ordering.Infrastructure.csproj", "{95F1F07C-4D92-4742-BD07-E5B805AAB651}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "UnitTest", "test\Services\UnitTest\UnitTest.csproj", "{7796F5D8-31FC-45A4-B673-19DE5BA194CF}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Identity.API", "src\Services\Identity\Identity.API\Identity.API.csproj", "{A579E108-5445-403D-A407-339AC4D1611B}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebSPA", "src\Web\WebSPA\WebSPA.csproj", "{F16E3C6A-1C94-4EAB-BE91-099618060B68}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IntegrationTests", "test\Services\IntegrationTests\IntegrationTests.csproj", "{5B810E3D-112E-4857-B197-F09D2FD41E27}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FunctionalTests", "test\Services\FunctionalTests\FunctionalTests.csproj", "{CFE2FACB-4538-4B99-8A10-306F3882952D}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "BuildingBlocks", "BuildingBlocks", "{DB0EFB20-B024-4E5E-A75C-52143C131D25}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "EventBus", "EventBus", "{807BB76E-B2BB-47A2-A57B-3D1B20FF5E7F}"
|
||||
@ -68,10 +62,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.Health
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebStatus", "src\Web\WebStatus\WebStatus.csproj", "{C0A7918D-B4F2-4E7F-8DE2-1E5279EF079F}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Payment", "Payment", "{022E145D-1593-47EE-9608-8E323D3C63F5}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Payment.API", "src\Services\Payment\Payment.API\Payment.API.csproj", "{1A01AF82-6FCB-464C-B39C-F127AEBD315D}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.HealthChecks", "src\BuildingBlocks\HealthChecks\src\Microsoft.AspNetCore.HealthChecks\Microsoft.AspNetCore.HealthChecks.csproj", "{22A0F9C1-2D4A-4107-95B7-8459E6688BC5}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.HealthChecks.SqlServer", "src\BuildingBlocks\HealthChecks\src\Microsoft.Extensions.HealthChecks.SqlServer\Microsoft.Extensions.HealthChecks.SqlServer.csproj", "{4BD76717-3102-4969-8C2C-BAAA3F0263B6}"
|
||||
@ -88,8 +78,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EventBusServiceBus", "src\B
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.HealthChecks.AzureStorage", "src\BuildingBlocks\HealthChecks\src\Microsoft.Extensions.HealthChecks.AzureStorage\Microsoft.Extensions.HealthChecks.AzureStorage.csproj", "{768C887F-C229-4B94-ACD8-0C7F65686524}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LoadTest", "test\Services\LoadTest\LoadTest.csproj", "{969E793C-C413-490E-9C9D-B2B46DA5AF32}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WebHost", "WebHost", "{1815B651-941C-466B-AE33-D1D7EEB8F77F}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebHost.Customization", "src\BuildingBlocks\WebHostCustomization\WebHost.Customization\WebHost.Customization.csproj", "{15F4B3AA-89B6-4A0D-9051-414305974781}"
|
||||
@ -128,6 +116,40 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.BackgroundTasks",
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.SignalrHub", "src\Services\Ordering\Ordering.SignalrHub\Ordering.SignalrHub.csproj", "{E1D2B260-4E7F-4A88-BC13-9910F7C44623}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Basket.UnitTests", "src\Services\Basket\Basket.UnitTests\Basket.UnitTests.csproj", "{9D9CE4E4-1DD0-4961-861F-219731DE06CE}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Catalog.UnitTests", "src\Services\Catalog\Catalog.UnitTests\Catalog.UnitTests.csproj", "{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Basket.FunctionalTests", "src\Services\Basket\Basket.FunctionalTests\Basket.FunctionalTests.csproj", "{3F6202D0-2842-4C2F-98E1-9462709EAFBE}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.UnitTests", "src\Services\Ordering\Ordering.UnitTests\Ordering.UnitTests.csproj", "{B1182FD9-C245-4018-8412-C66F290C7F4C}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Catalog.FunctionalTests", "src\Services\Catalog\Catalog.FunctionalTests\Catalog.FunctionalTests.csproj", "{38107691-A437-461D-A85C-ACD3AC7ACFAB}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Locations.FunctionalTests", "src\Services\Location\Locations.FunctionalTests\Locations.FunctionalTests.csproj", "{16F463AA-9CF6-44DC-B18C-7310CCF663FF}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.FunctionalTests", "src\Services\Ordering\Ordering.FunctionalTests\Ordering.FunctionalTests.csproj", "{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Marketing.FunctionalTests", "src\Services\Marketing\Marketing.FunctionalTests\Marketing.FunctionalTests.csproj", "{94176D9B-9CAA-4762-8D12-1621E240EE34}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LoadTest", "test\ServicesTests\LoadTest\LoadTest.csproj", "{969E793C-C413-490E-9C9D-B2B46DA5AF32}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Application.FunctionalTests", "test\ServicesTests\Application.FunctionalTests\Application.FunctionalTests.csproj", "{639BB197-D112-47A7-A44A-471DDB0FA1AE}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{2751AC5C-D148-4D7A-AE8F-149B47C9A82D}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{5FB21302-3973-4992-962A-6F87F5EC99FD}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{C3F6ED48-E26D-4D57-970F-B82E69467BA1}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{32EE4736-7534-47EC-BAAD-C00AF3130F80}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{120CABB3-0FEA-4B40-B4B5-2D3041798C80}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Payment", "Payment", "{C61C5CFE-4876-4A46-A96E-5BBF596A984A}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Payment.API", "src\Services\Payment\Payment.API\Payment.API.csproj", "{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Ad-Hoc|Any CPU = Ad-Hoc|Any CPU
|
||||
@ -382,54 +404,6 @@ Global
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|x64.Build.0 = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|x86.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|x64.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|x86.Build.0 = Release|Any CPU
|
||||
{A579E108-5445-403D-A407-339AC4D1611B}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A579E108-5445-403D-A407-339AC4D1611B}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A579E108-5445-403D-A407-339AC4D1611B}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
@ -526,102 +500,6 @@ Global
|
||||
{F16E3C6A-1C94-4EAB-BE91-099618060B68}.Release|x64.Build.0 = Release|Any CPU
|
||||
{F16E3C6A-1C94-4EAB-BE91-099618060B68}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{F16E3C6A-1C94-4EAB-BE91-099618060B68}.Release|x86.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|x64.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|x86.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|x64.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|x86.Build.0 = Release|Any CPU
|
||||
{0044B293-1DCC-4224-B948-00CF6DC7F510}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0044B293-1DCC-4224-B948-00CF6DC7F510}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0044B293-1DCC-4224-B948-00CF6DC7F510}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
@ -862,54 +740,6 @@ Global
|
||||
{C0A7918D-B4F2-4E7F-8DE2-1E5279EF079F}.Release|x64.Build.0 = Release|Any CPU
|
||||
{C0A7918D-B4F2-4E7F-8DE2-1E5279EF079F}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{C0A7918D-B4F2-4E7F-8DE2-1E5279EF079F}.Release|x86.Build.0 = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|x64.Build.0 = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D}.Release|x86.Build.0 = Release|Any CPU
|
||||
{22A0F9C1-2D4A-4107-95B7-8459E6688BC5}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{22A0F9C1-2D4A-4107-95B7-8459E6688BC5}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{22A0F9C1-2D4A-4107-95B7-8459E6688BC5}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
@ -1198,54 +1028,6 @@ Global
|
||||
{768C887F-C229-4B94-ACD8-0C7F65686524}.Release|x64.Build.0 = Release|Any CPU
|
||||
{768C887F-C229-4B94-ACD8-0C7F65686524}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{768C887F-C229-4B94-ACD8-0C7F65686524}.Release|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x86.Build.0 = Release|Any CPU
|
||||
{15F4B3AA-89B6-4A0D-9051-414305974781}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{15F4B3AA-89B6-4A0D-9051-414305974781}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{15F4B3AA-89B6-4A0D-9051-414305974781}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
@ -1534,6 +1316,534 @@ Global
|
||||
{E1D2B260-4E7F-4A88-BC13-9910F7C44623}.Release|x64.Build.0 = Release|Any CPU
|
||||
{E1D2B260-4E7F-4A88-BC13-9910F7C44623}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{E1D2B260-4E7F-4A88-BC13-9910F7C44623}.Release|x86.Build.0 = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|x64.Build.0 = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE}.Release|x86.Build.0 = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|x64.Build.0 = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0}.Release|x86.Build.0 = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|x64.Build.0 = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE}.Release|x86.Build.0 = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|x64.Build.0 = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C}.Release|x86.Build.0 = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|x64.Build.0 = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB}.Release|x86.Build.0 = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|x64.Build.0 = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF}.Release|x86.Build.0 = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|x64.Build.0 = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30}.Release|x86.Build.0 = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|x64.Build.0 = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34}.Release|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x86.Build.0 = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|x64.Build.0 = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE}.Release|x86.Build.0 = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|x64.Build.0 = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84}.Release|x86.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@ -1552,11 +1862,8 @@ Global
|
||||
{F5598DCB-6DDE-4661-AD9D-A55612DA7E76} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{F0333D8E-0B27-42B7-B2C6-78F3657624E2} = {E279BF0F-7F66-4F3A-A3AB-2CDA66C1CD04}
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{A579E108-5445-403D-A407-339AC4D1611B} = {24CD3B53-141E-4A07-9B0D-796641E1CF78}
|
||||
{F16E3C6A-1C94-4EAB-BE91-099618060B68} = {E279BF0F-7F66-4F3A-A3AB-2CDA66C1CD04}
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{DB0EFB20-B024-4E5E-A75C-52143C131D25} = {932D8224-11F6-4D07-B109-DA28AD288A63}
|
||||
{807BB76E-B2BB-47A2-A57B-3D1B20FF5E7F} = {DB0EFB20-B024-4E5E-A75C-52143C131D25}
|
||||
{0044B293-1DCC-4224-B948-00CF6DC7F510} = {807BB76E-B2BB-47A2-A57B-3D1B20FF5E7F}
|
||||
@ -1565,8 +1872,6 @@ Global
|
||||
{A81ECBC2-6B00-4DCD-8388-469174033379} = {DB0EFB20-B024-4E5E-A75C-52143C131D25}
|
||||
{942ED6E8-0050-495F-A0EA-01E97F63760C} = {A81ECBC2-6B00-4DCD-8388-469174033379}
|
||||
{C0A7918D-B4F2-4E7F-8DE2-1E5279EF079F} = {E279BF0F-7F66-4F3A-A3AB-2CDA66C1CD04}
|
||||
{022E145D-1593-47EE-9608-8E323D3C63F5} = {91CF7717-08AB-4E65-B10E-0B426F01E2E8}
|
||||
{1A01AF82-6FCB-464C-B39C-F127AEBD315D} = {022E145D-1593-47EE-9608-8E323D3C63F5}
|
||||
{22A0F9C1-2D4A-4107-95B7-8459E6688BC5} = {A81ECBC2-6B00-4DCD-8388-469174033379}
|
||||
{4BD76717-3102-4969-8C2C-BAAA3F0263B6} = {A81ECBC2-6B00-4DCD-8388-469174033379}
|
||||
{41139F64-4046-4F16-96B7-D941D96FA9C6} = {91CF7717-08AB-4E65-B10E-0B426F01E2E8}
|
||||
@ -1575,7 +1880,6 @@ Global
|
||||
{DF395F85-B010-465D-857A-7EBCC512C0C2} = {A5260DE0-1FDD-467E-9CC1-A028AB081CEE}
|
||||
{69AF10D3-AA76-4FF7-B187-EC7E8CC5F5B8} = {807BB76E-B2BB-47A2-A57B-3D1B20FF5E7F}
|
||||
{768C887F-C229-4B94-ACD8-0C7F65686524} = {A81ECBC2-6B00-4DCD-8388-469174033379}
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{1815B651-941C-466B-AE33-D1D7EEB8F77F} = {DB0EFB20-B024-4E5E-A75C-52143C131D25}
|
||||
{15F4B3AA-89B6-4A0D-9051-414305974781} = {1815B651-941C-466B-AE33-D1D7EEB8F77F}
|
||||
{77849D35-37D4-4802-81DC-9477B2775A40} = {932D8224-11F6-4D07-B109-DA28AD288A63}
|
||||
@ -1589,6 +1893,23 @@ Global
|
||||
{AF0828DB-8BDD-411A-AEEF-B780FBB8D8C1} = {28C0F5C8-4849-4035-80AB-45639424E73F}
|
||||
{7D63ED4A-3EDA-4BBA-8BBA-F46BD6430931} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{E1D2B260-4E7F-4A88-BC13-9910F7C44623} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{9D9CE4E4-1DD0-4961-861F-219731DE06CE} = {2751AC5C-D148-4D7A-AE8F-149B47C9A82D}
|
||||
{791961C7-3F3E-434E-B2BA-B4D6B5E222B0} = {5FB21302-3973-4992-962A-6F87F5EC99FD}
|
||||
{3F6202D0-2842-4C2F-98E1-9462709EAFBE} = {2751AC5C-D148-4D7A-AE8F-149B47C9A82D}
|
||||
{B1182FD9-C245-4018-8412-C66F290C7F4C} = {120CABB3-0FEA-4B40-B4B5-2D3041798C80}
|
||||
{38107691-A437-461D-A85C-ACD3AC7ACFAB} = {5FB21302-3973-4992-962A-6F87F5EC99FD}
|
||||
{16F463AA-9CF6-44DC-B18C-7310CCF663FF} = {C3F6ED48-E26D-4D57-970F-B82E69467BA1}
|
||||
{DA7D3E03-D0B6-4591-8143-779D3E9F3F30} = {120CABB3-0FEA-4B40-B4B5-2D3041798C80}
|
||||
{94176D9B-9CAA-4762-8D12-1621E240EE34} = {32EE4736-7534-47EC-BAAD-C00AF3130F80}
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{639BB197-D112-47A7-A44A-471DDB0FA1AE} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{2751AC5C-D148-4D7A-AE8F-149B47C9A82D} = {BF3EF4F3-E4F5-41DA-9D2D-57223687D1A8}
|
||||
{5FB21302-3973-4992-962A-6F87F5EC99FD} = {326A7FB3-5295-468C-A4FE-67DCB823E1E5}
|
||||
{C3F6ED48-E26D-4D57-970F-B82E69467BA1} = {41139F64-4046-4F16-96B7-D941D96FA9C6}
|
||||
{32EE4736-7534-47EC-BAAD-C00AF3130F80} = {A5260DE0-1FDD-467E-9CC1-A028AB081CEE}
|
||||
{120CABB3-0FEA-4B40-B4B5-2D3041798C80} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{C61C5CFE-4876-4A46-A96E-5BBF596A984A} = {91CF7717-08AB-4E65-B10E-0B426F01E2E8}
|
||||
{0AB40131-8AD7-436F-9C6B-EDA59CFA3A84} = {C61C5CFE-4876-4A46-A96E-5BBF596A984A}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {25728519-5F0F-4973-8A64-0A81EB4EA8D9}
|
||||
|
@ -25,7 +25,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ordering", "Ordering", "{0B
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{A857AD10-40FF-4303-BEC2-FF1C58D5735E}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Services", "Services", "{EF0337F2-ED00-4643-89FD-EE10863F1870}"
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ServicesTests", "ServicesTests", "{EF0337F2-ED00-4643-89FD-EE10863F1870}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Identity", "Identity", "{24CD3B53-141E-4A07-9B0D-796641E1CF78}"
|
||||
EndProject
|
||||
@ -41,16 +41,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebMVC", "src\Web\WebMVC\We
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.Infrastructure", "src\Services\Ordering\Ordering.Infrastructure\Ordering.Infrastructure.csproj", "{95F1F07C-4D92-4742-BD07-E5B805AAB651}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "UnitTest", "test\Services\UnitTest\UnitTest.csproj", "{7796F5D8-31FC-45A4-B673-19DE5BA194CF}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Identity.API", "src\Services\Identity\Identity.API\Identity.API.csproj", "{A579E108-5445-403D-A407-339AC4D1611B}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebSPA", "src\Web\WebSPA\WebSPA.csproj", "{F16E3C6A-1C94-4EAB-BE91-099618060B68}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IntegrationTests", "test\Services\IntegrationTests\IntegrationTests.csproj", "{5B810E3D-112E-4857-B197-F09D2FD41E27}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FunctionalTests", "test\Services\FunctionalTests\FunctionalTests.csproj", "{CFE2FACB-4538-4B99-8A10-306F3882952D}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "BuildingBlocks", "BuildingBlocks", "{DB0EFB20-B024-4E5E-A75C-52143C131D25}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "EventBus", "EventBus", "{807BB76E-B2BB-47A2-A57B-3D1B20FF5E7F}"
|
||||
@ -87,8 +81,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EventBusServiceBus", "src\B
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Extensions.HealthChecks.AzureStorage", "src\BuildingBlocks\HealthChecks\src\Microsoft.Extensions.HealthChecks.AzureStorage\Microsoft.Extensions.HealthChecks.AzureStorage.csproj", "{768C887F-C229-4B94-ACD8-0C7F65686524}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LoadTest", "test\Services\LoadTest\LoadTest.csproj", "{969E793C-C413-490E-9C9D-B2B46DA5AF32}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WebHost", "WebHost", "{1815B651-941C-466B-AE33-D1D7EEB8F77F}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebHost.Customization", "src\BuildingBlocks\WebHostCustomization\WebHost.Customization\WebHost.Customization.csproj", "{15F4B3AA-89B6-4A0D-9051-414305974781}"
|
||||
@ -119,6 +111,36 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunne
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.BackgroundTasks", "src\Services\Ordering\Ordering.BackgroundTasks\Ordering.BackgroundTasks.csproj", "{16CDE5D2-2DDE-4AF2-B902-AD9CC42DE480}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Basket.FunctionalTests", "src\Services\Basket\Basket.FunctionalTests\Basket.FunctionalTests.csproj", "{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Basket.UnitTests", "src\Services\Basket\Basket.UnitTests\Basket.UnitTests.csproj", "{63417272-1E6A-406A-AD11-C738558D89C0}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Catalog.FunctionalTests", "src\Services\Catalog\Catalog.FunctionalTests\Catalog.FunctionalTests.csproj", "{56E0E455-731E-41CB-AF46-C1A70F8A140B}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Catalog.UnitTests", "src\Services\Catalog\Catalog.UnitTests\Catalog.UnitTests.csproj", "{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Locations.FunctionalTests", "src\Services\Location\Locations.FunctionalTests\Locations.FunctionalTests.csproj", "{4F0E5CB2-5795-4040-8637-1D395914C944}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Marketing.FunctionalTests", "src\Services\Marketing\Marketing.FunctionalTests\Marketing.FunctionalTests.csproj", "{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.FunctionalTests", "src\Services\Ordering\Ordering.FunctionalTests\Ordering.FunctionalTests.csproj", "{5A155B15-D8E7-47FE-8D17-8E641726158C}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.UnitTests", "src\Services\Ordering\Ordering.UnitTests\Ordering.UnitTests.csproj", "{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LoadTest", "test\ServicesTests\LoadTest\LoadTest.csproj", "{969E793C-C413-490E-9C9D-B2B46DA5AF32}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Application.FunctionalTests", "test\ServicesTests\Application.FunctionalTests\Application.FunctionalTests.csproj", "{3572B4E2-4399-4797-B5C2-3720D870E0C3}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{7BA332A2-189D-4D03-9935-FDFF81C42496}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{2F0DEF71-84AC-4212-86D4-E36E8896BDBF}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{2B26A7AA-6D61-42FA-8AB7-C0F05AAE7F1C}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{DA1786E4-30AB-434E-A827-92896390B79D}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{30308DE0-8128-4613-BCAD-B0BEFFB20E38}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Ad-Hoc|Any CPU = Ad-Hoc|Any CPU
|
||||
@ -373,54 +395,6 @@ Global
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|x64.Build.0 = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|x86.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|x64.Build.0 = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF}.Release|x86.Build.0 = Release|Any CPU
|
||||
{A579E108-5445-403D-A407-339AC4D1611B}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A579E108-5445-403D-A407-339AC4D1611B}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A579E108-5445-403D-A407-339AC4D1611B}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
@ -517,102 +491,6 @@ Global
|
||||
{F16E3C6A-1C94-4EAB-BE91-099618060B68}.Release|x64.Build.0 = Release|Any CPU
|
||||
{F16E3C6A-1C94-4EAB-BE91-099618060B68}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{F16E3C6A-1C94-4EAB-BE91-099618060B68}.Release|x86.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|x64.Build.0 = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27}.Release|x86.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|x64.Build.0 = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D}.Release|x86.Build.0 = Release|Any CPU
|
||||
{0044B293-1DCC-4224-B948-00CF6DC7F510}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0044B293-1DCC-4224-B948-00CF6DC7F510}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0044B293-1DCC-4224-B948-00CF6DC7F510}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
@ -1189,54 +1067,6 @@ Global
|
||||
{768C887F-C229-4B94-ACD8-0C7F65686524}.Release|x64.Build.0 = Release|Any CPU
|
||||
{768C887F-C229-4B94-ACD8-0C7F65686524}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{768C887F-C229-4B94-ACD8-0C7F65686524}.Release|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x86.Build.0 = Release|Any CPU
|
||||
{15F4B3AA-89B6-4A0D-9051-414305974781}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{15F4B3AA-89B6-4A0D-9051-414305974781}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{15F4B3AA-89B6-4A0D-9051-414305974781}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
@ -1757,6 +1587,486 @@ Global
|
||||
{16CDE5D2-2DDE-4AF2-B902-AD9CC42DE480}.Release|x64.Build.0 = Release|Any CPU
|
||||
{16CDE5D2-2DDE-4AF2-B902-AD9CC42DE480}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{16CDE5D2-2DDE-4AF2-B902-AD9CC42DE480}.Release|x86.Build.0 = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|x64.Build.0 = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB}.Release|x86.Build.0 = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|x64.Build.0 = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0}.Release|x86.Build.0 = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|x64.Build.0 = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B}.Release|x86.Build.0 = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|x64.Build.0 = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5}.Release|x86.Build.0 = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|x64.Build.0 = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944}.Release|x86.Build.0 = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|x64.Build.0 = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8}.Release|x86.Build.0 = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|x64.Build.0 = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C}.Release|x86.Build.0 = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|x64.Build.0 = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A}.Release|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Ad-Hoc|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.AppStore|x86.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x64.Build.0 = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32}.Release|x86.Build.0 = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|x64.Build.0 = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3}.Release|x86.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@ -1775,11 +2085,8 @@ Global
|
||||
{F5598DCB-6DDE-4661-AD9D-A55612DA7E76} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{F0333D8E-0B27-42B7-B2C6-78F3657624E2} = {E279BF0F-7F66-4F3A-A3AB-2CDA66C1CD04}
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{7796F5D8-31FC-45A4-B673-19DE5BA194CF} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{A579E108-5445-403D-A407-339AC4D1611B} = {24CD3B53-141E-4A07-9B0D-796641E1CF78}
|
||||
{F16E3C6A-1C94-4EAB-BE91-099618060B68} = {E279BF0F-7F66-4F3A-A3AB-2CDA66C1CD04}
|
||||
{5B810E3D-112E-4857-B197-F09D2FD41E27} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{CFE2FACB-4538-4B99-8A10-306F3882952D} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{DB0EFB20-B024-4E5E-A75C-52143C131D25} = {932D8224-11F6-4D07-B109-DA28AD288A63}
|
||||
{807BB76E-B2BB-47A2-A57B-3D1B20FF5E7F} = {DB0EFB20-B024-4E5E-A75C-52143C131D25}
|
||||
{0044B293-1DCC-4224-B948-00CF6DC7F510} = {807BB76E-B2BB-47A2-A57B-3D1B20FF5E7F}
|
||||
@ -1798,7 +2105,6 @@ Global
|
||||
{DF395F85-B010-465D-857A-7EBCC512C0C2} = {A5260DE0-1FDD-467E-9CC1-A028AB081CEE}
|
||||
{69AF10D3-AA76-4FF7-B187-EC7E8CC5F5B8} = {807BB76E-B2BB-47A2-A57B-3D1B20FF5E7F}
|
||||
{768C887F-C229-4B94-ACD8-0C7F65686524} = {A81ECBC2-6B00-4DCD-8388-469174033379}
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{1815B651-941C-466B-AE33-D1D7EEB8F77F} = {DB0EFB20-B024-4E5E-A75C-52143C131D25}
|
||||
{15F4B3AA-89B6-4A0D-9051-414305974781} = {1815B651-941C-466B-AE33-D1D7EEB8F77F}
|
||||
{EF3EDC78-E864-43FF-8E80-CF33DD9508A3} = {932D8224-11F6-4D07-B109-DA28AD288A63}
|
||||
@ -1814,6 +2120,21 @@ Global
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3} = {0AAED9FF-3260-43BB-B586-9AAF1E010A90}
|
||||
{A7337243-33B8-463A-87AD-944B75EFD820} = {0AAED9FF-3260-43BB-B586-9AAF1E010A90}
|
||||
{16CDE5D2-2DDE-4AF2-B902-AD9CC42DE480} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{9F00E62F-E180-4A9C-8794-98A72AFAC2DB} = {7BA332A2-189D-4D03-9935-FDFF81C42496}
|
||||
{63417272-1E6A-406A-AD11-C738558D89C0} = {7BA332A2-189D-4D03-9935-FDFF81C42496}
|
||||
{56E0E455-731E-41CB-AF46-C1A70F8A140B} = {2F0DEF71-84AC-4212-86D4-E36E8896BDBF}
|
||||
{1EB6680D-4AC8-47EF-A026-E4EEEE93CAD5} = {2F0DEF71-84AC-4212-86D4-E36E8896BDBF}
|
||||
{4F0E5CB2-5795-4040-8637-1D395914C944} = {2B26A7AA-6D61-42FA-8AB7-C0F05AAE7F1C}
|
||||
{22F59DDE-D0BC-4D58-BCDE-240C7EEBECB8} = {DA1786E4-30AB-434E-A827-92896390B79D}
|
||||
{5A155B15-D8E7-47FE-8D17-8E641726158C} = {30308DE0-8128-4613-BCAD-B0BEFFB20E38}
|
||||
{0A9643F2-FF99-4DA0-BC2B-D62D5D3C317A} = {30308DE0-8128-4613-BCAD-B0BEFFB20E38}
|
||||
{969E793C-C413-490E-9C9D-B2B46DA5AF32} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{3572B4E2-4399-4797-B5C2-3720D870E0C3} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{7BA332A2-189D-4D03-9935-FDFF81C42496} = {BF3EF4F3-E4F5-41DA-9D2D-57223687D1A8}
|
||||
{2F0DEF71-84AC-4212-86D4-E36E8896BDBF} = {326A7FB3-5295-468C-A4FE-67DCB823E1E5}
|
||||
{2B26A7AA-6D61-42FA-8AB7-C0F05AAE7F1C} = {41139F64-4046-4F16-96B7-D941D96FA9C6}
|
||||
{DA1786E4-30AB-434E-A827-92896390B79D} = {A5260DE0-1FDD-467E-9CC1-A028AB081CEE}
|
||||
{30308DE0-8128-4613-BCAD-B0BEFFB20E38} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {25728519-5F0F-4973-8A64-0A81EB4EA8D9}
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"sdk": {
|
||||
"version": "2.1.300"
|
||||
"version": "2.1.401"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
BIN
img/ebook_arch_dev_microservices_containers_cover-v2.0.png
Normal file
BIN
img/ebook_arch_dev_microservices_containers_cover-v2.0.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 41 KiB |
Binary file not shown.
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 45 KiB |
@ -1,3 +1 @@
|
||||
kubectl patch deployment -n ingress-nginx nginx-ingress-controller --type=json --patch="$(cat nginx-ingress\publish-service-patch.yaml)"
|
||||
kubectl apply -f nginx-ingress\azure\service.yaml
|
||||
kubectl apply -f nginx-ingress\patch-service-without-rbac.yaml
|
||||
kubectl apply -f nginx-ingress\cloud-generic.yaml
|
2
k8s/deploy-ingress-dockerlocal.ps1
Normal file
2
k8s/deploy-ingress-dockerlocal.ps1
Normal file
@ -0,0 +1,2 @@
|
||||
kubectl apply -f nginx-ingress\cm.yaml
|
||||
kubectl apply -f nginx-ingress\cloud-generic.yaml
|
@ -1,12 +1,5 @@
|
||||
kubectl apply -f ingress.yaml
|
||||
|
||||
# Deploy nginx-ingress core files
|
||||
kubectl apply -f nginx-ingress\namespace.yaml
|
||||
kubectl apply -f nginx-ingress\default-backend.yaml
|
||||
kubectl apply -f nginx-ingress\configmap.yaml
|
||||
kubectl apply -f nginx-ingress\tcp-services-configmap.yaml
|
||||
kubectl apply -f nginx-ingress\udp-services-configmap.yaml
|
||||
kubectl apply -f nginx-ingress\without-rbac.yaml
|
||||
kubectl apply -f nginx-ingress\mandatory.yaml
|
||||
|
||||
|
||||
|
||||
|
@ -113,6 +113,7 @@ ExecKube -cmd 'delete configmap internalurls'
|
||||
ExecKube -cmd 'delete configmap urls'
|
||||
ExecKube -cmd 'delete configmap externalcfg'
|
||||
ExecKube -cmd 'delete configmap ocelot'
|
||||
ExecKube -cmd 'delete -f ingress.yaml'
|
||||
|
||||
# start sql, rabbitmq, frontend deployments
|
||||
if ($deployInfrastructure) {
|
||||
@ -204,5 +205,8 @@ ExecKube -cmd 'rollout resume deployments/apigwwm'
|
||||
ExecKube -cmd 'rollout resume deployments/apigwws'
|
||||
ExecKube -cmd 'rollout resume deployments/ordering-signalrhub'
|
||||
|
||||
Write-Host "Adding/Updating ingress resource..." -ForegroundColor Yellow
|
||||
ExecKube -cmd 'apply -f ingress.yaml'
|
||||
|
||||
Write-Host "WebSPA is exposed at http://$externalDns, WebMVC at http://$externalDns/webmvc, WebStatus at http://$externalDns/webstatus" -ForegroundColor Yellow
|
||||
|
||||
|
18
k8s/helm-rbac.yaml
Normal file
18
k8s/helm-rbac.yaml
Normal file
@ -0,0 +1,18 @@
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: tiller
|
||||
namespace: kube-system
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: tiller
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: cluster-admin
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: tiller
|
||||
namespace: kube-system
|
@ -30,7 +30,7 @@ env:
|
||||
urls:
|
||||
# configmap declares variables which value is taken from the config map defined in template configmap.yaml (name is name of var and key the key in configmap).
|
||||
configmap:
|
||||
- name: urls__identity
|
||||
- name: IdentityUrl
|
||||
key: internalurls__identity
|
||||
# values define environment variables with a fixed value (no configmap involved) (name is name of var, and value is its value)
|
||||
values:
|
||||
|
@ -30,7 +30,7 @@ env:
|
||||
urls:
|
||||
# configmap declares variables which value is taken from the config map defined in template configmap.yaml (name is name of var and key the key in configmap).
|
||||
configmap:
|
||||
- name: urls__identity
|
||||
- name: IdentityUrl
|
||||
key: internalurls__identity
|
||||
# values define environment variables with a fixed value (no configmap involved) (name is name of var, and value is its value)
|
||||
values:
|
||||
|
@ -30,7 +30,7 @@ env:
|
||||
urls:
|
||||
# configmap declares variables which value is taken from the config map defined in template configmap.yaml (name is name of var and key the key in configmap).
|
||||
configmap:
|
||||
- name: urls__identity
|
||||
- name: IdentityUrl
|
||||
key: internalurls__identity
|
||||
# values define environment variables with a fixed value (no configmap involved) (name is name of var, and value is its value)
|
||||
values:
|
||||
|
@ -30,7 +30,7 @@ env:
|
||||
urls:
|
||||
# configmap declares variables which value is taken from the config map defined in template configmap.yaml (name is name of var and key the key in configmap).
|
||||
configmap:
|
||||
- name: urls__identity
|
||||
- name: IdentityUrl
|
||||
key: internalurls__identity
|
||||
# values define environment variables with a fixed value (no configmap involved) (name is name of var, and value is its value)
|
||||
values:
|
||||
|
@ -1,4 +1,4 @@
|
||||
# This heml values file defines app-based settings
|
||||
# This helm values file defines app-based settings
|
||||
# Charts use those values, so this file **MUST** be included in all chart releases
|
||||
|
||||
|
||||
@ -27,7 +27,7 @@ app: # app global settings
|
||||
catalog: catalog # service name for catalog api
|
||||
ordering: ordering # service name for ordering api
|
||||
orderingbackgroundtasks: orderingbackgroundtasks # service name for orderingbackgroundtasks
|
||||
orderingsignalrhub: orderingsignalrhub # service name for orderingsignalrhub
|
||||
orderingsignalrhub: ordering-signalrhub # service name for orderingsignalrhub
|
||||
identity: identity # service name for identity api
|
||||
mvc: webmvc # service name for web mvc
|
||||
spa: webspa # service name for web spa
|
||||
|
@ -8,11 +8,19 @@ Param(
|
||||
[parameter(Mandatory=$false)][bool]$clean=$true,
|
||||
[parameter(Mandatory=$false)][string]$aksName="",
|
||||
[parameter(Mandatory=$false)][string]$aksRg="",
|
||||
[parameter(Mandatory=$false)][string]$imageTag="latest"
|
||||
)
|
||||
[parameter(Mandatory=$false)][string]$imageTag="latest",
|
||||
[parameter(Mandatory=$false)][bool]$useLocalk8s=$false
|
||||
)
|
||||
|
||||
$dns = $externalDns
|
||||
|
||||
$ingressValuesFile="ingress_values.yaml"
|
||||
|
||||
if ($ingressValuesFile) {
|
||||
$ingressValuesFile="ingress_values_dockerk8s.yaml"
|
||||
$dns="localhost"
|
||||
}
|
||||
|
||||
if ($externalDns -eq "aks") {
|
||||
if ([string]::IsNullOrEmpty($aksName) -or [string]::IsNullOrEmpty($aksRg)) {
|
||||
Write-Host "Error: When using -dns aks, MUST set -aksName and -aksRg too." -ForegroundColor Red
|
||||
@ -58,18 +66,18 @@ $charts = ("eshop-common", "apigwmm", "apigwms", "apigwwm", "apigwws", "basket-a
|
||||
if ($deployInfrastructure) {
|
||||
foreach ($infra in $infras) {
|
||||
Write-Host "Installing infrastructure: $infra" -ForegroundColor Green
|
||||
helm install --values app.yaml --values inf.yaml --values ingress_values.yaml --set app.name=$appName --set inf.k8s.dns=$dns --name="$appName-$infra" $infra
|
||||
helm install --values app.yaml --values inf.yaml --values $ingressValuesFile --set app.name=$appName --set inf.k8s.dns=$dns --name="$appName-$infra" $infra
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($chart in $charts) {
|
||||
Write-Host "Installing: $chart" -ForegroundColor Green
|
||||
if ($useCustomRegistry) {
|
||||
helm install --set inf.registry.server=$registry --set inf.registry.login=$dockerUser --set inf.registry.pwd=$dockerPassword --set inf.registry.secretName=eshop-docker-scret --values app.yaml --values inf.yaml --values ingress_values.yaml --set app.name=$appName --set inf.k8s.dns=$dns --set image.tag=$imageTag --set image.pullPolicy=Always --name="$appName-$chart" $chart
|
||||
helm install --set inf.registry.server=$registry --set inf.registry.login=$dockerUser --set inf.registry.pwd=$dockerPassword --set inf.registry.secretName=eshop-docker-scret --values app.yaml --values inf.yaml --values $ingressValuesFile --set app.name=$appName --set inf.k8s.dns=$dns --set image.tag=$imageTag --set image.pullPolicy=Always --name="$appName-$chart" $chart
|
||||
}
|
||||
else {
|
||||
if ($chart -ne "eshop-common") { # eshop-common is ignored when no secret must be deployed
|
||||
helm install --values app.yaml --values inf.yaml --values ingress_values.yaml --set app.name=$appName --set inf.k8s.dns=$dns --set image.tag=$imageTag --set image.pullPolicy=Always --name="$appName-$chart" $chart
|
||||
helm install --values app.yaml --values inf.yaml --values $ingressValuesFile --set app.name=$appName --set inf.k8s.dns=$dns --set image.tag=$imageTag --set image.pullPolicy=Always --name="$appName-$chart" $chart
|
||||
}
|
||||
}
|
||||
}
|
||||
|
5
k8s/helm/ingress_values_dockerk8s.yaml
Normal file
5
k8s/helm/ingress_values_dockerk8s.yaml
Normal file
@ -0,0 +1,5 @@
|
||||
ingress:
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: "nginx"
|
||||
ingress.kubernetes.io/ssl-redirect: "false"
|
||||
nginx.ingress.kubernetes.io/ssl-redirect: "false"
|
@ -15,4 +15,4 @@ data:
|
||||
all__InstrumentationKey: {{ .Values.inf.appinsights.key }}
|
||||
all__UseAzureServiceBus: "{{ .Values.inf.eventbus.useAzure }}"
|
||||
signalr__StoreConnectionString: {{ .Values.inf.redis.keystore.constr }}
|
||||
urls__IdentityUrl: {{ $identity }}
|
||||
urls__IdentityUrl: http://{{ $identity }}
|
@ -1,19 +0,0 @@
|
||||
kind: Service
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: ingress-nginx
|
||||
namespace: ingress-nginx
|
||||
labels:
|
||||
app: ingress-nginx
|
||||
spec:
|
||||
externalTrafficPolicy: Local
|
||||
type: LoadBalancer
|
||||
selector:
|
||||
app: ingress-nginx
|
||||
ports:
|
||||
- name: http
|
||||
port: 80
|
||||
targetPort: http
|
||||
- name: https
|
||||
port: 443
|
||||
targetPort: https
|
21
k8s/nginx-ingress/cloud-generic.yaml
Normal file
21
k8s/nginx-ingress/cloud-generic.yaml
Normal file
@ -0,0 +1,21 @@
|
||||
kind: Service
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: ingress-nginx
|
||||
namespace: ingress-nginx
|
||||
labels:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
spec:
|
||||
externalTrafficPolicy: Local
|
||||
type: LoadBalancer
|
||||
selector:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
ports:
|
||||
- name: http
|
||||
port: 80
|
||||
targetPort: http
|
||||
- name: https
|
||||
port: 443
|
||||
targetPort: https
|
BIN
k8s/nginx-ingress/cm.yaml
Normal file
BIN
k8s/nginx-ingress/cm.yaml
Normal file
Binary file not shown.
@ -1,11 +0,0 @@
|
||||
kind: ConfigMap
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: nginx-configuration
|
||||
namespace: ingress-nginx
|
||||
labels:
|
||||
app: ingress-nginx
|
||||
data:
|
||||
ssl-redirect: "false"
|
||||
proxy-buffer-size: "128k"
|
||||
proxy-buffers: "4 256k"
|
@ -1,52 +0,0 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: default-http-backend
|
||||
labels:
|
||||
app: default-http-backend
|
||||
namespace: ingress-nginx
|
||||
spec:
|
||||
replicas: 1
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: default-http-backend
|
||||
spec:
|
||||
terminationGracePeriodSeconds: 60
|
||||
containers:
|
||||
- name: default-http-backend
|
||||
# Any image is permissable as long as:
|
||||
# 1. It serves a 404 page at /
|
||||
# 2. It serves 200 on a /healthz endpoint
|
||||
image: gcr.io/google_containers/defaultbackend:1.4
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /healthz
|
||||
port: 8080
|
||||
scheme: HTTP
|
||||
initialDelaySeconds: 30
|
||||
timeoutSeconds: 5
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
resources:
|
||||
limits:
|
||||
cpu: 10m
|
||||
memory: 20Mi
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 20Mi
|
||||
---
|
||||
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: default-http-backend
|
||||
namespace: ingress-nginx
|
||||
labels:
|
||||
app: default-http-backend
|
||||
spec:
|
||||
ports:
|
||||
- port: 80
|
||||
targetPort: 8080
|
||||
selector:
|
||||
app: default-http-backend
|
@ -0,0 +1,3 @@
|
||||
data:
|
||||
mvc_e: http://10.0.75.1/webmvc
|
||||
|
3
k8s/nginx-ingress/local-dockerk8s/mvc-cm-fix.yaml
Normal file
3
k8s/nginx-ingress/local-dockerk8s/mvc-cm-fix.yaml
Normal file
@ -0,0 +1,3 @@
|
||||
data:
|
||||
urls__IdentityUrl: http://10.0.75.1/identity
|
||||
urls__mvc: http://10.0.75.1/webmvc
|
39
k8s/nginx-ingress/local-dockerk8s/mvc-fix.yaml
Normal file
39
k8s/nginx-ingress/local-dockerk8s/mvc-fix.yaml
Normal file
@ -0,0 +1,39 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
annotations:
|
||||
ingress.kubernetes.io/ssl-redirect: "false"
|
||||
kubernetes.io/ingress.class: nginx
|
||||
nginx.ingress.kubernetes.io/ssl-redirect: "false"
|
||||
labels:
|
||||
app: webmvc
|
||||
name: eshop-webmvc-loopback
|
||||
namespace: default
|
||||
spec:
|
||||
rules:
|
||||
- http:
|
||||
paths:
|
||||
- backend:
|
||||
serviceName: webmvc
|
||||
servicePort: http
|
||||
path: /webmvc
|
||||
---
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
annotations:
|
||||
ingress.kubernetes.io/ssl-redirect: "false"
|
||||
kubernetes.io/ingress.class: nginx
|
||||
nginx.ingress.kubernetes.io/ssl-redirect: "false"
|
||||
labels:
|
||||
app: identity-api
|
||||
name: eshop-identity-api-loopback
|
||||
namespace: default
|
||||
spec:
|
||||
rules:
|
||||
- http:
|
||||
paths:
|
||||
- backend:
|
||||
serviceName: identity
|
||||
servicePort: http
|
||||
path: /identity
|
238
k8s/nginx-ingress/mandatory.yaml
Normal file
238
k8s/nginx-ingress/mandatory.yaml
Normal file
@ -0,0 +1,238 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: ingress-nginx
|
||||
|
||||
---
|
||||
|
||||
kind: ConfigMap
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: nginx-configuration
|
||||
namespace: ingress-nginx
|
||||
labels:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
|
||||
---
|
||||
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: nginx-ingress-serviceaccount
|
||||
namespace: ingress-nginx
|
||||
labels:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: nginx-ingress-clusterrole
|
||||
labels:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- configmaps
|
||||
- endpoints
|
||||
- nodes
|
||||
- pods
|
||||
- secrets
|
||||
verbs:
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- nodes
|
||||
verbs:
|
||||
- get
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- services
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- "extensions"
|
||||
resources:
|
||||
- ingresses
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- create
|
||||
- patch
|
||||
- apiGroups:
|
||||
- "extensions"
|
||||
resources:
|
||||
- ingresses/status
|
||||
verbs:
|
||||
- update
|
||||
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||
kind: Role
|
||||
metadata:
|
||||
name: nginx-ingress-role
|
||||
namespace: ingress-nginx
|
||||
labels:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- configmaps
|
||||
- pods
|
||||
- secrets
|
||||
- namespaces
|
||||
verbs:
|
||||
- get
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- configmaps
|
||||
resourceNames:
|
||||
# Defaults to "<election-id>-<ingress-class>"
|
||||
# Here: "<ingress-controller-leader>-<nginx>"
|
||||
# This has to be adapted if you change either parameter
|
||||
# when launching the nginx-ingress-controller.
|
||||
- "ingress-controller-leader-nginx"
|
||||
verbs:
|
||||
- get
|
||||
- update
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- configmaps
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- endpoints
|
||||
verbs:
|
||||
- get
|
||||
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: nginx-ingress-role-nisa-binding
|
||||
namespace: ingress-nginx
|
||||
labels:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: nginx-ingress-role
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: nginx-ingress-serviceaccount
|
||||
namespace: ingress-nginx
|
||||
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: nginx-ingress-clusterrole-nisa-binding
|
||||
labels:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: nginx-ingress-clusterrole
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: nginx-ingress-serviceaccount
|
||||
namespace: ingress-nginx
|
||||
|
||||
---
|
||||
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: nginx-ingress-controller
|
||||
namespace: ingress-nginx
|
||||
labels:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
annotations:
|
||||
prometheus.io/port: "10254"
|
||||
prometheus.io/scrape: "true"
|
||||
spec:
|
||||
serviceAccountName: nginx-ingress-serviceaccount
|
||||
containers:
|
||||
- name: nginx-ingress-controller
|
||||
image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.20.0
|
||||
args:
|
||||
- /nginx-ingress-controller
|
||||
- --configmap=$(POD_NAMESPACE)/nginx-configuration
|
||||
- --publish-service=$(POD_NAMESPACE)/ingress-nginx
|
||||
- --annotations-prefix=nginx.ingress.kubernetes.io
|
||||
securityContext:
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
add:
|
||||
- NET_BIND_SERVICE
|
||||
# www-data -> 33
|
||||
runAsUser: 33
|
||||
env:
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: POD_NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: 80
|
||||
- name: https
|
||||
containerPort: 443
|
||||
livenessProbe:
|
||||
failureThreshold: 3
|
||||
httpGet:
|
||||
path: /healthz
|
||||
port: 10254
|
||||
scheme: HTTP
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 1
|
||||
readinessProbe:
|
||||
failureThreshold: 3
|
||||
httpGet:
|
||||
path: /healthz
|
||||
port: 10254
|
||||
scheme: HTTP
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 1
|
@ -1,4 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: ingress-nginx
|
@ -1,40 +0,0 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: nginx-ingress-controller
|
||||
namespace: ingress-nginx
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: ingress-nginx
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: ingress-nginx
|
||||
spec:
|
||||
containers:
|
||||
- name: nginx-ingress-controller
|
||||
image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.9.0
|
||||
args:
|
||||
- /nginx-ingress-controller
|
||||
- --default-backend-service=$(POD_NAMESPACE)/default-http-backend
|
||||
- --configmap=$(POD_NAMESPACE)/nginx-configuration
|
||||
- --tcp-services-configmap=$(POD_NAMESPACE)/tcp-services
|
||||
- --udp-services-configmap=$(POD_NAMESPACE)/udp-services
|
||||
- --publish-service=$(POD_NAMESPACE)/ingress-nginx
|
||||
- --annotations-prefix=nginx.ingress.kubernetes.io
|
||||
env:
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: POD_NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: 80
|
||||
- name: https
|
||||
containerPort: 443
|
@ -1,7 +0,0 @@
|
||||
[
|
||||
{
|
||||
'op': 'add',
|
||||
'path': '/spec/template/spec/containers/0/args/-',
|
||||
'value': '--publish-service=$(POD_NAMESPACE)/ingress-nginx'
|
||||
}
|
||||
]
|
22
k8s/nginx-ingress/service-nodeport.yaml
Normal file
22
k8s/nginx-ingress/service-nodeport.yaml
Normal file
@ -0,0 +1,22 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: ingress-nginx
|
||||
namespace: ingress-nginx
|
||||
labels:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
||||
spec:
|
||||
type: NodePort
|
||||
ports:
|
||||
- name: http
|
||||
port: 80
|
||||
targetPort: 80
|
||||
protocol: TCP
|
||||
- name: https
|
||||
port: 443
|
||||
targetPort: 443
|
||||
protocol: TCP
|
||||
selector:
|
||||
app.kubernetes.io/name: ingress-nginx
|
||||
app.kubernetes.io/part-of: ingress-nginx
|
@ -1,5 +0,0 @@
|
||||
kind: ConfigMap
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: tcp-services
|
||||
namespace: ingress-nginx
|
@ -1,5 +0,0 @@
|
||||
kind: ConfigMap
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: udp-services
|
||||
namespace: ingress-nginx
|
@ -1,61 +0,0 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: nginx-ingress-controller
|
||||
namespace: ingress-nginx
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: ingress-nginx
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: ingress-nginx
|
||||
annotations:
|
||||
prometheus.io/port: '10254'
|
||||
prometheus.io/scrape: 'true'
|
||||
spec:
|
||||
containers:
|
||||
- name: nginx-ingress-controller
|
||||
image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.9.0
|
||||
args:
|
||||
- /nginx-ingress-controller
|
||||
- --default-backend-service=$(POD_NAMESPACE)/default-http-backend
|
||||
- --configmap=$(POD_NAMESPACE)/nginx-configuration
|
||||
- --tcp-services-configmap=$(POD_NAMESPACE)/tcp-services
|
||||
- --udp-services-configmap=$(POD_NAMESPACE)/udp-services
|
||||
- --annotations-prefix=nginx.ingress.kubernetes.io
|
||||
env:
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: POD_NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: 80
|
||||
- name: https
|
||||
containerPort: 443
|
||||
livenessProbe:
|
||||
failureThreshold: 3
|
||||
httpGet:
|
||||
path: /healthz
|
||||
port: 10254
|
||||
scheme: HTTP
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 1
|
||||
readinessProbe:
|
||||
failureThreshold: 3
|
||||
httpGet:
|
||||
path: /healthz
|
||||
port: 10254
|
||||
scheme: HTTP
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 1
|
14
run-docker-compose-build.ps1
Normal file
14
run-docker-compose-build.ps1
Normal file
@ -0,0 +1,14 @@
|
||||
$startTime = $(Get-Date)
|
||||
|
||||
docker-compose build
|
||||
|
||||
$elapsedTime = $(Get-Date) - $startTime
|
||||
|
||||
$elapsedTime
|
||||
|
||||
# "Beep" from: http://jeffwouters.nl/index.php/2012/03/get-your-geek-on-with-powershell-and-some-music/
|
||||
[console]::beep(900,400)
|
||||
[console]::beep(1000,400)
|
||||
[console]::beep(800,400)
|
||||
[console]::beep(400,400)
|
||||
[console]::beep(600,1600)
|
@ -10,6 +10,6 @@
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.AspNetCore.App" />
|
||||
<PackageReference Include="Ocelot" Version="3.0.0" />
|
||||
<PackageReference Include="Ocelot" Version="12.0.1" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
|
@ -1,11 +1,5 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using CacheManager.Core;
|
||||
using Microsoft.AspNetCore.Builder;
|
||||
using Microsoft.AspNetCore.Builder;
|
||||
using Microsoft.AspNetCore.Hosting;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.AspNetCore.App" />
|
||||
<PackageReference Include="Swashbuckle.AspNetCore" Version="1.1.0" />
|
||||
<PackageReference Include="Swashbuckle.AspNetCore" Version="3.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Http.Polly" Version="2.1.0" />
|
||||
</ItemGroup>
|
||||
|
||||
|
@ -1,4 +1,8 @@
|
||||
using Microsoft.AspNetCore.Authentication.JwtBearer;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IdentityModel.Tokens.Jwt;
|
||||
using System.Net.Http;
|
||||
using Microsoft.AspNetCore.Authentication.JwtBearer;
|
||||
using Microsoft.AspNetCore.Builder;
|
||||
using Microsoft.AspNetCore.Hosting;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
@ -12,10 +16,6 @@ using Microsoft.Extensions.Logging;
|
||||
using Polly;
|
||||
using Polly.Extensions.Http;
|
||||
using Swashbuckle.AspNetCore.Swagger;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IdentityModel.Tokens.Jwt;
|
||||
using System.Net.Http;
|
||||
|
||||
namespace Microsoft.eShopOnContainers.Mobile.Shopping.HttpAggregator
|
||||
{
|
||||
@ -61,7 +61,11 @@ namespace Microsoft.eShopOnContainers.Mobile.Shopping.HttpAggregator
|
||||
app.UseSwagger().UseSwaggerUI(c =>
|
||||
{
|
||||
c.SwaggerEndpoint($"{ (!string.IsNullOrEmpty(pathBase) ? pathBase : string.Empty) }/swagger/v1/swagger.json", "Purchase BFF V1");
|
||||
c.ConfigureOAuth2("Microsoft.eShopOnContainers.Mobile.Shopping.HttpAggregatorwaggerui", "", "", "Purchase BFF Swagger UI");
|
||||
|
||||
c.OAuthClientId("Microsoft.eShopOnContainers.Mobile.Shopping.HttpAggregatorwaggerui");
|
||||
c.OAuthClientSecret(string.Empty);
|
||||
c.OAuthRealm(string.Empty);
|
||||
c.OAuthAppName("Purchase BFF Swagger UI");
|
||||
});
|
||||
}
|
||||
}
|
||||
@ -130,11 +134,9 @@ namespace Microsoft.eShopOnContainers.Mobile.Shopping.HttpAggregator
|
||||
{
|
||||
OnAuthenticationFailed = async ctx =>
|
||||
{
|
||||
int i = 0;
|
||||
},
|
||||
OnTokenValidated = async ctx =>
|
||||
{
|
||||
int i = 0;
|
||||
}
|
||||
};
|
||||
});
|
||||
@ -166,7 +168,7 @@ namespace Microsoft.eShopOnContainers.Mobile.Shopping.HttpAggregator
|
||||
return services;
|
||||
}
|
||||
|
||||
static IAsyncPolicy<HttpResponseMessage> GetRetryPolicy()
|
||||
private static IAsyncPolicy<HttpResponseMessage> GetRetryPolicy()
|
||||
{
|
||||
return HttpPolicyExtensions
|
||||
.HandleTransientHttpError()
|
||||
@ -174,7 +176,8 @@ namespace Microsoft.eShopOnContainers.Mobile.Shopping.HttpAggregator
|
||||
.WaitAndRetryAsync(6, retryAttempt => TimeSpan.FromSeconds(Math.Pow(2, retryAttempt)));
|
||||
|
||||
}
|
||||
static IAsyncPolicy<HttpResponseMessage> GetCircuitBreakerPolicy()
|
||||
|
||||
private static IAsyncPolicy<HttpResponseMessage> GetCircuitBreakerPolicy()
|
||||
{
|
||||
return HttpPolicyExtensions
|
||||
.HandleTransientHttpError()
|
||||
|
@ -13,8 +13,7 @@
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.AspNetCore.App" Version="2.1.0" />
|
||||
<PackageReference Include="Swashbuckle.AspNetCore" Version="2.4.0" />
|
||||
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerUi" Version="2.4.0" />
|
||||
<PackageReference Include="Swashbuckle.AspNetCore" Version="3.0.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Http.Polly" Version="2.1.0" />
|
||||
</ItemGroup>
|
||||
|
||||
|
@ -6,11 +6,11 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace EventBus.Tests
|
||||
{
|
||||
public class TestIntegrationOtherEventHandler : IIntegrationEventHandler<TestIntegrationEvent>
|
||||
public class TestIntegrationEventHandler : IIntegrationEventHandler<TestIntegrationEvent>
|
||||
{
|
||||
public bool Handled { get; private set; }
|
||||
|
||||
public TestIntegrationOtherEventHandler()
|
||||
public TestIntegrationEventHandler()
|
||||
{
|
||||
Handled = false;
|
||||
}
|
||||
|
@ -6,11 +6,11 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace EventBus.Tests
|
||||
{
|
||||
public class TestIntegrationEventHandler : IIntegrationEventHandler<TestIntegrationEvent>
|
||||
public class TestIntegrationOtherEventHandler : IIntegrationEventHandler<TestIntegrationEvent>
|
||||
{
|
||||
public bool Handled { get; private set; }
|
||||
|
||||
public TestIntegrationEventHandler()
|
||||
public TestIntegrationOtherEventHandler()
|
||||
{
|
||||
Handled = false;
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Events
|
||||
{
|
||||
@ -10,7 +11,17 @@ namespace Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Events
|
||||
CreationDate = DateTime.UtcNow;
|
||||
}
|
||||
|
||||
public Guid Id { get; }
|
||||
public DateTime CreationDate { get; }
|
||||
[JsonConstructor]
|
||||
public IntegrationEvent(Guid id, DateTime createDate)
|
||||
{
|
||||
Id = id;
|
||||
CreationDate = createDate;
|
||||
}
|
||||
|
||||
[JsonProperty]
|
||||
public Guid Id { get; private set; }
|
||||
|
||||
[JsonProperty]
|
||||
public DateTime CreationDate { get; private set; }
|
||||
}
|
||||
}
|
||||
|
@ -1,10 +1,8 @@
|
||||
using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Abstractions;
|
||||
using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Events;
|
||||
using System;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text;
|
||||
using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Abstractions;
|
||||
using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Events;
|
||||
|
||||
namespace Microsoft.eShopOnContainers.BuildingBlocks.EventBus
|
||||
{
|
||||
@ -37,8 +35,13 @@ namespace Microsoft.eShopOnContainers.BuildingBlocks.EventBus
|
||||
where TH : IIntegrationEventHandler<T>
|
||||
{
|
||||
var eventName = GetEventKey<T>();
|
||||
|
||||
DoAddSubscription(typeof(TH), eventName, isDynamic: false);
|
||||
_eventTypes.Add(typeof(T));
|
||||
|
||||
if (!_eventTypes.Contains(typeof(T)))
|
||||
{
|
||||
_eventTypes.Add(typeof(T));
|
||||
}
|
||||
}
|
||||
|
||||
private void DoAddSubscription(Type handlerType, string eventName, bool isDynamic)
|
||||
|
@ -217,14 +217,16 @@ namespace Microsoft.eShopOnContainers.BuildingBlocks.EventBusRabbitMQ
|
||||
if (subscription.IsDynamic)
|
||||
{
|
||||
var handler = scope.ResolveOptional(subscription.HandlerType) as IDynamicIntegrationEventHandler;
|
||||
if (handler == null) continue;
|
||||
dynamic eventData = JObject.Parse(message);
|
||||
await handler.Handle(eventData);
|
||||
}
|
||||
else
|
||||
{
|
||||
var handler = scope.ResolveOptional(subscription.HandlerType);
|
||||
if (handler == null) continue;
|
||||
var eventType = _subsManager.GetEventTypeByName(eventName);
|
||||
var integrationEvent = JsonConvert.DeserializeObject(message, eventType);
|
||||
var handler = scope.ResolveOptional(subscription.HandlerType);
|
||||
var concreteType = typeof(IIntegrationEventHandler<>).MakeGenericType(eventType);
|
||||
await (Task)concreteType.GetMethod("Handle").Invoke(handler, new object[] { integrationEvent });
|
||||
}
|
||||
|
@ -22,7 +22,7 @@
|
||||
private readonly string AUTOFAC_SCOPE_NAME = "eshop_event_bus";
|
||||
private const string INTEGRATION_EVENT_SUFIX = "IntegrationEvent";
|
||||
|
||||
public EventBusServiceBus(IServiceBusPersisterConnection serviceBusPersisterConnection,
|
||||
public EventBusServiceBus(IServiceBusPersisterConnection serviceBusPersisterConnection,
|
||||
ILogger<EventBusServiceBus> logger, IEventBusSubscriptionsManager subsManager, string subscriptionClientName,
|
||||
ILifetimeScope autofac)
|
||||
{
|
||||
@ -30,7 +30,7 @@
|
||||
_logger = logger;
|
||||
_subsManager = subsManager ?? new InMemoryEventBusSubscriptionsManager();
|
||||
|
||||
_subscriptionClient = new SubscriptionClient(serviceBusPersisterConnection.ServiceBusConnectionStringBuilder,
|
||||
_subscriptionClient = new SubscriptionClient(serviceBusPersisterConnection.ServiceBusConnectionStringBuilder,
|
||||
subscriptionClientName);
|
||||
_autofac = autofac;
|
||||
|
||||
@ -68,7 +68,7 @@
|
||||
where T : IntegrationEvent
|
||||
where TH : IIntegrationEventHandler<T>
|
||||
{
|
||||
var eventName = typeof(T).Name.Replace(INTEGRATION_EVENT_SUFIX, "");
|
||||
var eventName = typeof(T).Name.Replace(INTEGRATION_EVENT_SUFIX, "");
|
||||
|
||||
var containsKey = _subsManager.HasSubscriptionsForEvent<T>();
|
||||
if (!containsKey)
|
||||
@ -81,7 +81,7 @@
|
||||
Name = eventName
|
||||
}).GetAwaiter().GetResult();
|
||||
}
|
||||
catch(ServiceBusException)
|
||||
catch (ServiceBusException)
|
||||
{
|
||||
_logger.LogInformation($"The messaging entity {eventName} already exists.");
|
||||
}
|
||||
@ -129,10 +129,12 @@
|
||||
{
|
||||
var eventName = $"{message.Label}{INTEGRATION_EVENT_SUFIX}";
|
||||
var messageData = Encoding.UTF8.GetString(message.Body);
|
||||
await ProcessEvent(eventName, messageData);
|
||||
|
||||
|
||||
// Complete the message so that it is not received again.
|
||||
await _subscriptionClient.CompleteAsync(message.SystemProperties.LockToken);
|
||||
if (await ProcessEvent(eventName, messageData))
|
||||
{
|
||||
await _subscriptionClient.CompleteAsync(message.SystemProperties.LockToken);
|
||||
}
|
||||
},
|
||||
new MessageHandlerOptions(ExceptionReceivedHandler) { MaxConcurrentCalls = 10, AutoComplete = false });
|
||||
}
|
||||
@ -148,8 +150,9 @@
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
private async Task ProcessEvent(string eventName, string message)
|
||||
private async Task<bool> ProcessEvent(string eventName, string message)
|
||||
{
|
||||
var processed = false;
|
||||
if (_subsManager.HasSubscriptionsForEvent(eventName))
|
||||
{
|
||||
using (var scope = _autofac.BeginLifetimeScope(AUTOFAC_SCOPE_NAME))
|
||||
@ -160,20 +163,24 @@
|
||||
if (subscription.IsDynamic)
|
||||
{
|
||||
var handler = scope.ResolveOptional(subscription.HandlerType) as IDynamicIntegrationEventHandler;
|
||||
if (handler == null) continue;
|
||||
dynamic eventData = JObject.Parse(message);
|
||||
await handler.Handle(eventData);
|
||||
}
|
||||
else
|
||||
{
|
||||
var eventType = _subsManager.GetEventTypeByName(eventName);
|
||||
var integrationEvent = JsonConvert.DeserializeObject(message, eventType);
|
||||
var handler = scope.ResolveOptional(subscription.HandlerType);
|
||||
if (handler == null) continue;
|
||||
var eventType = _subsManager.GetEventTypeByName(eventName);
|
||||
var integrationEvent = JsonConvert.DeserializeObject(message, eventType);
|
||||
var concreteType = typeof(IIntegrationEventHandler<>).MakeGenericType(eventType);
|
||||
await (Task)concreteType.GetMethod("Handle").Invoke(handler, new object[] { integrationEvent });
|
||||
}
|
||||
}
|
||||
}
|
||||
processed = true;
|
||||
}
|
||||
return processed;
|
||||
}
|
||||
|
||||
private void RemoveDefaultRule()
|
||||
@ -191,4 +198,4 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -7,7 +7,8 @@ namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF
|
||||
public enum EventStateEnum
|
||||
{
|
||||
NotPublished = 0,
|
||||
Published = 1,
|
||||
PublishedFailed = 2
|
||||
InProgress = 1,
|
||||
Published = 2,
|
||||
PublishedFailed = 3
|
||||
}
|
||||
}
|
||||
|
@ -3,6 +3,9 @@ using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using Newtonsoft.Json;
|
||||
using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Events;
|
||||
using System.Linq;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Reflection;
|
||||
|
||||
namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF
|
||||
{
|
||||
@ -11,7 +14,7 @@ namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF
|
||||
private IntegrationEventLogEntry() { }
|
||||
public IntegrationEventLogEntry(IntegrationEvent @event)
|
||||
{
|
||||
EventId = @event.Id;
|
||||
EventId = @event.Id;
|
||||
CreationTime = @event.CreationDate;
|
||||
EventTypeName = @event.GetType().FullName;
|
||||
Content = JsonConvert.SerializeObject(@event);
|
||||
@ -20,9 +23,19 @@ namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF
|
||||
}
|
||||
public Guid EventId { get; private set; }
|
||||
public string EventTypeName { get; private set; }
|
||||
[NotMapped]
|
||||
public string EventTypeShortName => EventTypeName.Split('.')?.Last();
|
||||
[NotMapped]
|
||||
public IntegrationEvent IntegrationEvent { get; private set; }
|
||||
public EventStateEnum State { get; set; }
|
||||
public int TimesSent { get; set; }
|
||||
public DateTime CreationTime { get; private set; }
|
||||
public string Content { get; private set; }
|
||||
|
||||
public IntegrationEventLogEntry DeserializeJsonContent(Type type)
|
||||
{
|
||||
IntegrationEvent = JsonConvert.DeserializeObject(Content, type) as IntegrationEvent;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,10 @@ namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF.Servi
|
||||
{
|
||||
public interface IIntegrationEventLogService
|
||||
{
|
||||
Task<IEnumerable<IntegrationEventLogEntry>> RetrieveEventLogsPendingToPublishAsync();
|
||||
Task SaveEventAsync(IntegrationEvent @event, DbTransaction transaction);
|
||||
Task MarkEventAsPublishedAsync(IntegrationEvent @event);
|
||||
Task MarkEventAsPublishedAsync(Guid eventId);
|
||||
Task MarkEventAsInProgressAsync(Guid eventId);
|
||||
Task MarkEventAsFailedAsync(Guid eventId);
|
||||
}
|
||||
}
|
||||
|
@ -1,12 +1,15 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Storage;
|
||||
using Microsoft.EntityFrameworkCore.Diagnostics;
|
||||
using Microsoft.eShopOnContainers.BuildingBlocks.EventBus;
|
||||
using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Events;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.Common;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Threading.Tasks;
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Diagnostics;
|
||||
|
||||
namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF.Services
|
||||
{
|
||||
@ -14,37 +17,69 @@ namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF.Servi
|
||||
{
|
||||
private readonly IntegrationEventLogContext _integrationEventLogContext;
|
||||
private readonly DbConnection _dbConnection;
|
||||
private readonly List<Type> _eventTypes;
|
||||
|
||||
public IntegrationEventLogService(DbConnection dbConnection)
|
||||
{
|
||||
_dbConnection = dbConnection?? throw new ArgumentNullException("dbConnection");
|
||||
_dbConnection = dbConnection ?? throw new ArgumentNullException(nameof(dbConnection));
|
||||
_integrationEventLogContext = new IntegrationEventLogContext(
|
||||
new DbContextOptionsBuilder<IntegrationEventLogContext>()
|
||||
.UseSqlServer(_dbConnection)
|
||||
.ConfigureWarnings(warnings => warnings.Throw(RelationalEventId.QueryClientEvaluationWarning))
|
||||
.Options);
|
||||
|
||||
_eventTypes = Assembly.Load(Assembly.GetEntryAssembly().FullName)
|
||||
.GetTypes()
|
||||
.Where(t => t.Name.EndsWith(nameof(IntegrationEvent)))
|
||||
.ToList();
|
||||
}
|
||||
|
||||
public async Task<IEnumerable<IntegrationEventLogEntry>> RetrieveEventLogsPendingToPublishAsync()
|
||||
{
|
||||
return await _integrationEventLogContext.IntegrationEventLogs
|
||||
.Where(e => e.State == EventStateEnum.NotPublished)
|
||||
.OrderBy(o => o.CreationTime)
|
||||
.Select(e => e.DeserializeJsonContent(_eventTypes.Find(t=> t.Name == e.EventTypeShortName)))
|
||||
.ToListAsync();
|
||||
}
|
||||
|
||||
public Task SaveEventAsync(IntegrationEvent @event, DbTransaction transaction)
|
||||
{
|
||||
if(transaction == null)
|
||||
if (transaction == null)
|
||||
{
|
||||
throw new ArgumentNullException("transaction", $"A {typeof(DbTransaction).FullName} is required as a pre-requisite to save the event.");
|
||||
throw new ArgumentNullException(nameof(transaction), $"A {typeof(DbTransaction).FullName} is required as a pre-requisite to save the event.");
|
||||
}
|
||||
|
||||
|
||||
var eventLogEntry = new IntegrationEventLogEntry(@event);
|
||||
|
||||
|
||||
_integrationEventLogContext.Database.UseTransaction(transaction);
|
||||
_integrationEventLogContext.IntegrationEventLogs.Add(eventLogEntry);
|
||||
|
||||
return _integrationEventLogContext.SaveChangesAsync();
|
||||
}
|
||||
|
||||
public Task MarkEventAsPublishedAsync(IntegrationEvent @event)
|
||||
public Task MarkEventAsPublishedAsync(Guid eventId)
|
||||
{
|
||||
var eventLogEntry = _integrationEventLogContext.IntegrationEventLogs.Single(ie => ie.EventId == @event.Id);
|
||||
eventLogEntry.TimesSent++;
|
||||
eventLogEntry.State = EventStateEnum.Published;
|
||||
return UpdateEventStatus(eventId, EventStateEnum.Published);
|
||||
}
|
||||
|
||||
public Task MarkEventAsInProgressAsync(Guid eventId)
|
||||
{
|
||||
return UpdateEventStatus(eventId, EventStateEnum.InProgress);
|
||||
}
|
||||
|
||||
public Task MarkEventAsFailedAsync(Guid eventId)
|
||||
{
|
||||
return UpdateEventStatus(eventId, EventStateEnum.PublishedFailed);
|
||||
}
|
||||
|
||||
private Task UpdateEventStatus(Guid eventId, EventStateEnum status)
|
||||
{
|
||||
var eventLogEntry = _integrationEventLogContext.IntegrationEventLogs.Single(ie => ie.EventId == eventId);
|
||||
eventLogEntry.State = status;
|
||||
|
||||
if(status == EventStateEnum.InProgress)
|
||||
eventLogEntry.TimesSent++;
|
||||
|
||||
_integrationEventLogContext.IntegrationEventLogs.Update(eventLogEntry);
|
||||
|
||||
|
@ -1,4 +1,6 @@
|
||||
namespace eShopOnContainers.Core
|
||||
using System;
|
||||
|
||||
namespace eShopOnContainers.Core
|
||||
{
|
||||
public class GlobalSetting
|
||||
{
|
||||
@ -6,39 +8,60 @@
|
||||
public const string MockTag = "Mock";
|
||||
public const string DefaultEndpoint = "http://YOUR_IP_OR_DNS_NAME"; // i.e.: "http://YOUR_IP" or "http://YOUR_DNS_NAME"
|
||||
|
||||
private string _baseEndpoint;
|
||||
private static readonly GlobalSetting _instance = new GlobalSetting();
|
||||
private string _baseIdentityEndpoint;
|
||||
private string _baseGatewayShoppingEndpoint;
|
||||
private string _baseGatewayMarketingEndpoint;
|
||||
|
||||
public GlobalSetting()
|
||||
{
|
||||
AuthToken = "INSERT AUTHENTICATION TOKEN";
|
||||
BaseEndpoint = DefaultEndpoint;
|
||||
|
||||
BaseIdentityEndpoint = DefaultEndpoint;
|
||||
BaseGatewayShoppingEndpoint = DefaultEndpoint;
|
||||
BaseGatewayMarketingEndpoint = DefaultEndpoint;
|
||||
}
|
||||
|
||||
public static GlobalSetting Instance
|
||||
{
|
||||
get { return _instance; }
|
||||
}
|
||||
public static GlobalSetting Instance { get; } = new GlobalSetting();
|
||||
|
||||
public string BaseEndpoint
|
||||
public string BaseIdentityEndpoint
|
||||
{
|
||||
get { return _baseEndpoint; }
|
||||
get { return _baseIdentityEndpoint; }
|
||||
set
|
||||
{
|
||||
_baseEndpoint = value;
|
||||
UpdateEndpoint(_baseEndpoint);
|
||||
_baseIdentityEndpoint = value;
|
||||
UpdateEndpoint(_baseIdentityEndpoint);
|
||||
}
|
||||
}
|
||||
|
||||
public string ClientId { get { return "xamarin"; }}
|
||||
public string BaseGatewayShoppingEndpoint
|
||||
{
|
||||
get { return _baseGatewayShoppingEndpoint; }
|
||||
set
|
||||
{
|
||||
_baseGatewayShoppingEndpoint = value;
|
||||
UpdateGatewayShoppingEndpoint(_baseGatewayShoppingEndpoint);
|
||||
}
|
||||
}
|
||||
|
||||
public string ClientSecret { get { return "secret"; }}
|
||||
public string BaseGatewayMarketingEndpoint
|
||||
{
|
||||
get { return _baseGatewayMarketingEndpoint; }
|
||||
set
|
||||
{
|
||||
_baseGatewayMarketingEndpoint = value;
|
||||
UpdateGatewayMarketingEndpoint(_baseGatewayMarketingEndpoint);
|
||||
}
|
||||
}
|
||||
|
||||
public string ClientId { get { return "xamarin"; } }
|
||||
|
||||
public string ClientSecret { get { return "secret"; } }
|
||||
|
||||
public string AuthToken { get; set; }
|
||||
|
||||
public string RegisterWebsite { get; set; }
|
||||
|
||||
public string IdentityEndpoint { get; set; }
|
||||
public string AuthorizeEndpoint { get; set; }
|
||||
|
||||
public string UserInfoEndpoint { get; set; }
|
||||
|
||||
@ -46,23 +69,45 @@
|
||||
|
||||
public string LogoutEndpoint { get; set; }
|
||||
|
||||
public string IdentityCallback { get; set; }
|
||||
public string Callback { get; set; }
|
||||
|
||||
public string LogoutCallback { get; set; }
|
||||
|
||||
private void UpdateEndpoint(string baseEndpoint)
|
||||
{
|
||||
var identityBaseEndpoint = $"{baseEndpoint}/identity";
|
||||
RegisterWebsite = $"{identityBaseEndpoint}/Account/Register";
|
||||
LogoutCallback = $"{identityBaseEndpoint}/Account/Redirecting";
|
||||
public string GatewayShoppingEndpoint { get; set; }
|
||||
|
||||
var connectBaseEndpoint = $"{identityBaseEndpoint}/connect";
|
||||
IdentityEndpoint = $"{connectBaseEndpoint}/authorize";
|
||||
public string GatewayMarketingEndpoint { get; set; }
|
||||
|
||||
private void UpdateEndpoint(string endpoint)
|
||||
{
|
||||
RegisterWebsite = $"{endpoint}/Account/Register";
|
||||
LogoutCallback = $"{endpoint}/Account/Redirecting";
|
||||
|
||||
var connectBaseEndpoint = $"{endpoint}/connect";
|
||||
AuthorizeEndpoint = $"{connectBaseEndpoint}/authorize";
|
||||
UserInfoEndpoint = $"{connectBaseEndpoint}/userinfo";
|
||||
TokenEndpoint = $"{connectBaseEndpoint}/token";
|
||||
LogoutEndpoint = $"{connectBaseEndpoint}/endsession";
|
||||
|
||||
IdentityCallback = $"{baseEndpoint}/xamarincallback";
|
||||
|
||||
var baseUri = ExtractBaseUri(endpoint);
|
||||
Callback = $"{baseUri}/xamarincallback";
|
||||
}
|
||||
|
||||
private void UpdateGatewayShoppingEndpoint(string endpoint)
|
||||
{
|
||||
GatewayShoppingEndpoint = $"{endpoint}";
|
||||
}
|
||||
|
||||
private void UpdateGatewayMarketingEndpoint(string endpoint)
|
||||
{
|
||||
GatewayMarketingEndpoint = $"{endpoint}";
|
||||
}
|
||||
|
||||
private string ExtractBaseUri(string endpoint)
|
||||
{
|
||||
var uri = new Uri(endpoint);
|
||||
var baseUri = uri.GetLeftPart(System.UriPartial.Authority);
|
||||
|
||||
return baseUri;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace eShopOnContainers.Core.Helpers
|
||||
{
|
||||
public static class UriHelper
|
||||
{
|
||||
public static string CombineUri(params string[] uriParts)
|
||||
{
|
||||
string uri = string.Empty;
|
||||
if (uriParts != null && uriParts.Count() > 0)
|
||||
{
|
||||
char[] trims = new char[] { '\\', '/' };
|
||||
uri = (uriParts[0] ?? string.Empty).TrimEnd(trims);
|
||||
for (int i = 1; i < uriParts.Count(); i++)
|
||||
{
|
||||
uri = string.Format("{0}/{1}", uri.TrimEnd(trims), (uriParts[i] ?? string.Empty).TrimStart(trims));
|
||||
}
|
||||
}
|
||||
return uri;
|
||||
}
|
||||
}
|
||||
}
|
@ -3,6 +3,7 @@ using System.Threading.Tasks;
|
||||
using eShopOnContainers.Core.Services.RequestProvider;
|
||||
using eShopOnContainers.Core.Models.Basket;
|
||||
using eShopOnContainers.Core.Services.FixUri;
|
||||
using eShopOnContainers.Core.Helpers;
|
||||
|
||||
namespace eShopOnContainers.Core.Services.Basket
|
||||
{
|
||||
@ -11,7 +12,7 @@ namespace eShopOnContainers.Core.Services.Basket
|
||||
private readonly IRequestProvider _requestProvider;
|
||||
private readonly IFixUriService _fixUriService;
|
||||
|
||||
private const string ApiUrlBase = "mobileshoppingapigw/api/v1/b/basket";
|
||||
private const string ApiUrlBase = "api/v1/b/basket";
|
||||
|
||||
public BasketService(IRequestProvider requestProvider, IFixUriService fixUriService)
|
||||
{
|
||||
@ -21,12 +22,7 @@ namespace eShopOnContainers.Core.Services.Basket
|
||||
|
||||
public async Task<CustomerBasket> GetBasketAsync(string guidUser, string token)
|
||||
{
|
||||
var builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint)
|
||||
{
|
||||
Path = $"{ApiUrlBase}/{guidUser}"
|
||||
};
|
||||
|
||||
var uri = builder.ToString();
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayShoppingEndpoint, $"{ApiUrlBase}/{guidUser}");
|
||||
|
||||
CustomerBasket basket;
|
||||
|
||||
@ -45,35 +41,23 @@ namespace eShopOnContainers.Core.Services.Basket
|
||||
|
||||
public async Task<CustomerBasket> UpdateBasketAsync(CustomerBasket customerBasket, string token)
|
||||
{
|
||||
var builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint)
|
||||
{
|
||||
Path = ApiUrlBase
|
||||
};
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayShoppingEndpoint, ApiUrlBase);
|
||||
|
||||
var uri = builder.ToString();
|
||||
var result = await _requestProvider.PostAsync(uri, customerBasket, token);
|
||||
return result;
|
||||
}
|
||||
|
||||
public async Task CheckoutAsync(BasketCheckout basketCheckout, string token)
|
||||
{
|
||||
var builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint)
|
||||
{
|
||||
Path = $"{ApiUrlBase}/checkout"
|
||||
};
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayShoppingEndpoint, $"{ApiUrlBase}/checkout");
|
||||
|
||||
var uri = builder.ToString();
|
||||
await _requestProvider.PostAsync(uri, basketCheckout, token);
|
||||
}
|
||||
|
||||
public async Task ClearBasketAsync(string guidUser, string token)
|
||||
{
|
||||
var builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint)
|
||||
{
|
||||
Path = $"{ApiUrlBase}/{guidUser}"
|
||||
};
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayShoppingEndpoint, $"{ApiUrlBase}/{guidUser}");
|
||||
|
||||
var uri = builder.ToString();
|
||||
await _requestProvider.DeleteAsync(uri, token);
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@ using eShopOnContainers.Core.Services.RequestProvider;
|
||||
using eShopOnContainers.Core.Extensions;
|
||||
using System.Collections.Generic;
|
||||
using eShopOnContainers.Core.Services.FixUri;
|
||||
using eShopOnContainers.Core.Helpers;
|
||||
|
||||
namespace eShopOnContainers.Core.Services.Catalog
|
||||
{
|
||||
@ -14,7 +15,7 @@ namespace eShopOnContainers.Core.Services.Catalog
|
||||
private readonly IRequestProvider _requestProvider;
|
||||
private readonly IFixUriService _fixUriService;
|
||||
|
||||
private const string ApiUrlBase = "mobileshoppingapigw/api/v1/c/catalog";
|
||||
private const string ApiUrlBase = "api/v1/c/catalog";
|
||||
|
||||
public CatalogService(IRequestProvider requestProvider, IFixUriService fixUriService)
|
||||
{
|
||||
@ -24,9 +25,7 @@ namespace eShopOnContainers.Core.Services.Catalog
|
||||
|
||||
public async Task<ObservableCollection<CatalogItem>> FilterAsync(int catalogBrandId, int catalogTypeId)
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint);
|
||||
builder.Path = $"{ApiUrlBase}/items/type/{catalogTypeId}/brand/{catalogBrandId}";
|
||||
string uri = builder.ToString();
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayShoppingEndpoint, $"{ApiUrlBase}/items/type/{catalogTypeId}/brand/{catalogBrandId}");
|
||||
|
||||
CatalogRoot catalog = await _requestProvider.GetAsync<CatalogRoot>(uri);
|
||||
|
||||
@ -38,9 +37,7 @@ namespace eShopOnContainers.Core.Services.Catalog
|
||||
|
||||
public async Task<ObservableCollection<CatalogItem>> GetCatalogAsync()
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint);
|
||||
builder.Path = $"{ApiUrlBase}/items";
|
||||
string uri = builder.ToString();
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayShoppingEndpoint, $"{ApiUrlBase}/items");
|
||||
|
||||
CatalogRoot catalog = await _requestProvider.GetAsync<CatalogRoot>(uri);
|
||||
|
||||
@ -55,9 +52,7 @@ namespace eShopOnContainers.Core.Services.Catalog
|
||||
|
||||
public async Task<ObservableCollection<CatalogBrand>> GetCatalogBrandAsync()
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint);
|
||||
builder.Path = $"{ApiUrlBase}/catalogbrands";
|
||||
string uri = builder.ToString();
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayShoppingEndpoint, $"{ApiUrlBase}/catalogbrands");
|
||||
|
||||
IEnumerable<CatalogBrand> brands = await _requestProvider.GetAsync<IEnumerable<CatalogBrand>>(uri);
|
||||
|
||||
@ -69,9 +64,7 @@ namespace eShopOnContainers.Core.Services.Catalog
|
||||
|
||||
public async Task<ObservableCollection<CatalogType>> GetCatalogTypeAsync()
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint);
|
||||
builder.Path = $"{ApiUrlBase}/catalogtypes";
|
||||
string uri = builder.ToString();
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayShoppingEndpoint, $"{ApiUrlBase}/catalogtypes");
|
||||
|
||||
IEnumerable<CatalogType> types = await _requestProvider.GetAsync<IEnumerable<CatalogType>>(uri);
|
||||
|
||||
|
@ -31,12 +31,12 @@ namespace eShopOnContainers.Core.Services.FixUri
|
||||
try
|
||||
{
|
||||
if (!ViewModelLocator.UseMockService
|
||||
&& _settingsService.UrlBase != GlobalSetting.DefaultEndpoint)
|
||||
&& _settingsService.IdentityEndpointBase != GlobalSetting.DefaultEndpoint)
|
||||
{
|
||||
foreach (var catalogItem in catalogItems)
|
||||
{
|
||||
MatchCollection serverResult = IpRegex.Matches(catalogItem.PictureUri);
|
||||
MatchCollection localResult = IpRegex.Matches(_settingsService.UrlBase);
|
||||
MatchCollection localResult = IpRegex.Matches(_settingsService.IdentityEndpointBase);
|
||||
|
||||
if (serverResult.Count != -1 && localResult.Count != -1)
|
||||
{
|
||||
@ -64,12 +64,12 @@ namespace eShopOnContainers.Core.Services.FixUri
|
||||
try
|
||||
{
|
||||
if (!ViewModelLocator.UseMockService
|
||||
&& _settingsService.UrlBase != GlobalSetting.DefaultEndpoint)
|
||||
&& _settingsService.IdentityEndpointBase != GlobalSetting.DefaultEndpoint)
|
||||
{
|
||||
foreach (var basketItem in basketItems)
|
||||
{
|
||||
MatchCollection serverResult = IpRegex.Matches(basketItem.PictureUrl);
|
||||
MatchCollection localResult = IpRegex.Matches(_settingsService.UrlBase);
|
||||
MatchCollection localResult = IpRegex.Matches(_settingsService.IdentityEndpointBase);
|
||||
|
||||
if (serverResult.Count != -1 && localResult.Count != -1)
|
||||
{
|
||||
@ -96,12 +96,12 @@ namespace eShopOnContainers.Core.Services.FixUri
|
||||
try
|
||||
{
|
||||
if (!ViewModelLocator.UseMockService
|
||||
&& _settingsService.UrlBase != GlobalSetting.DefaultEndpoint)
|
||||
&& _settingsService.IdentityEndpointBase != GlobalSetting.DefaultEndpoint)
|
||||
{
|
||||
foreach (var campaignItem in campaignItems)
|
||||
{
|
||||
MatchCollection serverResult = IpRegex.Matches(campaignItem.PictureUri);
|
||||
MatchCollection localResult = IpRegex.Matches(_settingsService.UrlBase);
|
||||
MatchCollection localResult = IpRegex.Matches(_settingsService.IdentityEndpointBase);
|
||||
|
||||
if (serverResult.Count != -1 && localResult.Count != -1)
|
||||
{
|
||||
|
@ -25,7 +25,7 @@ namespace eShopOnContainers.Core.Services.Identity
|
||||
public string CreateAuthorizationRequest()
|
||||
{
|
||||
// Create URI to authorization endpoint
|
||||
var authorizeRequest = new AuthorizeRequest(GlobalSetting.Instance.IdentityEndpoint);
|
||||
var authorizeRequest = new AuthorizeRequest(GlobalSetting.Instance.AuthorizeEndpoint);
|
||||
|
||||
// Dictionary with values for the authorize request
|
||||
var dic = new Dictionary<string, string>();
|
||||
@ -33,7 +33,7 @@ namespace eShopOnContainers.Core.Services.Identity
|
||||
dic.Add("client_secret", GlobalSetting.Instance.ClientSecret);
|
||||
dic.Add("response_type", "code id_token");
|
||||
dic.Add("scope", "openid profile basket orders locations marketing offline_access");
|
||||
dic.Add("redirect_uri", GlobalSetting.Instance.IdentityCallback);
|
||||
dic.Add("redirect_uri", GlobalSetting.Instance.Callback);
|
||||
dic.Add("nonce", Guid.NewGuid().ToString("N"));
|
||||
dic.Add("code_challenge", CreateCodeChallenge());
|
||||
dic.Add("code_challenge_method", "S256");
|
||||
@ -61,7 +61,7 @@ namespace eShopOnContainers.Core.Services.Identity
|
||||
|
||||
public async Task<UserToken> GetTokenAsync(string code)
|
||||
{
|
||||
string data = string.Format("grant_type=authorization_code&code={0}&redirect_uri={1}&code_verifier={2}", code, WebUtility.UrlEncode(GlobalSetting.Instance.IdentityCallback), _codeVerifier);
|
||||
string data = string.Format("grant_type=authorization_code&code={0}&redirect_uri={1}&code_verifier={2}", code, WebUtility.UrlEncode(GlobalSetting.Instance.Callback), _codeVerifier);
|
||||
var token = await _requestProvider.PostAsync<UserToken>(GlobalSetting.Instance.TokenEndpoint, data, GlobalSetting.Instance.ClientId, GlobalSetting.Instance.ClientSecret);
|
||||
return token;
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
using eShopOnContainers.Core.Helpers;
|
||||
using eShopOnContainers.Core.Services.RequestProvider;
|
||||
|
||||
namespace eShopOnContainers.Core.Services.Location
|
||||
@ -8,6 +9,8 @@ namespace eShopOnContainers.Core.Services.Location
|
||||
{
|
||||
private readonly IRequestProvider _requestProvider;
|
||||
|
||||
private const string ApiUrlBase = "api/v1/l/locations";
|
||||
|
||||
public LocationService(IRequestProvider requestProvider)
|
||||
{
|
||||
_requestProvider = requestProvider;
|
||||
@ -15,9 +18,8 @@ namespace eShopOnContainers.Core.Services.Location
|
||||
|
||||
public async Task UpdateUserLocation(eShopOnContainers.Core.Models.Location.Location newLocReq, string token)
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint);
|
||||
builder.Path = "/mobilemarketingapigw/api/v1/l/locations";
|
||||
string uri = builder.ToString();
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayMarketingEndpoint, ApiUrlBase);
|
||||
|
||||
await _requestProvider.PostAsync(uri, newLocReq, token);
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
using eShopOnContainers.Core.Extensions;
|
||||
using eShopOnContainers.Core.Helpers;
|
||||
using eShopOnContainers.Core.Models.Marketing;
|
||||
using eShopOnContainers.Core.Services.FixUri;
|
||||
using eShopOnContainers.Core.Services.RequestProvider;
|
||||
@ -13,7 +14,7 @@ namespace eShopOnContainers.Core.Services.Marketing
|
||||
private readonly IRequestProvider _requestProvider;
|
||||
private readonly IFixUriService _fixUriService;
|
||||
|
||||
private const string ApiUrlBase = "mobilemarketingapigw/api/v1/m/campaigns";
|
||||
private const string ApiUrlBase = "api/v1/m/campaigns";
|
||||
|
||||
public CampaignService(IRequestProvider requestProvider, IFixUriService fixUriService)
|
||||
{
|
||||
@ -23,9 +24,7 @@ namespace eShopOnContainers.Core.Services.Marketing
|
||||
|
||||
public async Task<ObservableCollection<CampaignItem>> GetAllCampaignsAsync(string token)
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint);
|
||||
builder.Path = $"{ApiUrlBase}/user";
|
||||
string uri = builder.ToString();
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayMarketingEndpoint, $"{ApiUrlBase}/user");
|
||||
|
||||
CampaignRoot campaign = await _requestProvider.GetAsync<CampaignRoot>(uri, token);
|
||||
|
||||
@ -40,9 +39,8 @@ namespace eShopOnContainers.Core.Services.Marketing
|
||||
|
||||
public async Task<CampaignItem> GetCampaignByIdAsync(int campaignId, string token)
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint);
|
||||
builder.Path = $"{ApiUrlBase}/{campaignId}";
|
||||
string uri = builder.ToString();
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayMarketingEndpoint, $"{ApiUrlBase}/{campaignId}");
|
||||
|
||||
return await _requestProvider.GetAsync<CampaignItem>(uri, token);
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
using eShopOnContainers.Core.Models.Basket;
|
||||
using eShopOnContainers.Core.Helpers;
|
||||
using eShopOnContainers.Core.Models.Basket;
|
||||
using eShopOnContainers.Core.Models.Orders;
|
||||
using eShopOnContainers.Core.Services.RequestProvider;
|
||||
using System;
|
||||
@ -11,7 +12,7 @@ namespace eShopOnContainers.Core.Services.Order
|
||||
{
|
||||
private readonly IRequestProvider _requestProvider;
|
||||
|
||||
private const string ApiUrlBase = "mobileshoppingapigw/api/v1/o/orders";
|
||||
private const string ApiUrlBase = "api/v1/o/orders";
|
||||
|
||||
public OrderService(IRequestProvider requestProvider)
|
||||
{
|
||||
@ -25,11 +26,7 @@ namespace eShopOnContainers.Core.Services.Order
|
||||
|
||||
public async Task<ObservableCollection<Models.Orders.Order>> GetOrdersAsync(string token)
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint);
|
||||
|
||||
builder.Path = ApiUrlBase;
|
||||
|
||||
string uri = builder.ToString();
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayShoppingEndpoint, ApiUrlBase);
|
||||
|
||||
ObservableCollection<Models.Orders.Order> orders =
|
||||
await _requestProvider.GetAsync<ObservableCollection<Models.Orders.Order>>(uri, token);
|
||||
@ -42,11 +39,7 @@ namespace eShopOnContainers.Core.Services.Order
|
||||
{
|
||||
try
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint);
|
||||
|
||||
builder.Path = $"{ApiUrlBase}/{orderId}";
|
||||
|
||||
string uri = builder.ToString();
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayShoppingEndpoint, $"{ApiUrlBase}/{orderId}");
|
||||
|
||||
Models.Orders.Order order =
|
||||
await _requestProvider.GetAsync<Models.Orders.Order>(uri, token);
|
||||
@ -78,13 +71,10 @@ namespace eShopOnContainers.Core.Services.Order
|
||||
|
||||
public async Task<bool> CancelOrderAsync(int orderId, string token)
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.Instance.BaseEndpoint);
|
||||
|
||||
builder.Path = $"{ApiUrlBase}/cancel";
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.GatewayShoppingEndpoint, $"{ApiUrlBase}/cancel");
|
||||
|
||||
var cancelOrderCommand = new CancelOrderCommand(orderId);
|
||||
|
||||
string uri = builder.ToString();
|
||||
var header = "x-requestid";
|
||||
|
||||
try
|
||||
|
@ -7,7 +7,9 @@ namespace eShopOnContainers.Core.Services.Settings
|
||||
string AuthAccessToken { get; set; }
|
||||
string AuthIdToken { get; set; }
|
||||
bool UseMocks { get; set; }
|
||||
string UrlBase { get; set; }
|
||||
string IdentityEndpointBase { get; set; }
|
||||
string GatewayShoppingEndpointBase { get; set; }
|
||||
string GatewayMarketingEndpointBase { get; set; }
|
||||
bool UseFakeLocation { get; set; }
|
||||
string Latitude { get; set; }
|
||||
string Longitude { get; set; }
|
||||
|
@ -11,7 +11,9 @@ namespace eShopOnContainers.Core.Services.Settings
|
||||
private const string AccessToken = "access_token";
|
||||
private const string IdToken = "id_token";
|
||||
private const string IdUseMocks = "use_mocks";
|
||||
private const string IdUrlBase = "url_base";
|
||||
private const string IdIdentityBase = "url_base";
|
||||
private const string IdGatewayMarketingBase = "url_marketing";
|
||||
private const string IdGatewayShoppingBase = "url_shopping";
|
||||
private const string IdUseFakeLocation = "use_fake_location";
|
||||
private const string IdLatitude = "latitude";
|
||||
private const string IdLongitude = "longitude";
|
||||
@ -23,8 +25,9 @@ namespace eShopOnContainers.Core.Services.Settings
|
||||
private readonly bool AllowGpsLocationDefault = false;
|
||||
private readonly double FakeLatitudeDefault = 47.604610d;
|
||||
private readonly double FakeLongitudeDefault = -122.315752d;
|
||||
private readonly string UrlBaseDefault = GlobalSetting.Instance.BaseEndpoint;
|
||||
|
||||
private readonly string UrlIdentityDefault = GlobalSetting.Instance.BaseIdentityEndpoint;
|
||||
private readonly string UrlGatewayMarketingDefault = GlobalSetting.Instance.BaseGatewayMarketingEndpoint;
|
||||
private readonly string UrlGatewayShoppingDefault = GlobalSetting.Instance.BaseGatewayShoppingEndpoint;
|
||||
#endregion
|
||||
|
||||
#region Settings Properties
|
||||
@ -47,10 +50,22 @@ namespace eShopOnContainers.Core.Services.Settings
|
||||
set => AddOrUpdateValue(IdUseMocks, value);
|
||||
}
|
||||
|
||||
public string UrlBase
|
||||
public string IdentityEndpointBase
|
||||
{
|
||||
get => GetValueOrDefault(IdUrlBase, UrlBaseDefault);
|
||||
set => AddOrUpdateValue(IdUrlBase, value);
|
||||
get => GetValueOrDefault(IdIdentityBase, UrlIdentityDefault);
|
||||
set => AddOrUpdateValue(IdIdentityBase, value);
|
||||
}
|
||||
|
||||
public string GatewayShoppingEndpointBase
|
||||
{
|
||||
get => GetValueOrDefault(IdGatewayShoppingBase, UrlGatewayShoppingDefault);
|
||||
set => AddOrUpdateValue(IdGatewayShoppingBase, value);
|
||||
}
|
||||
|
||||
public string GatewayMarketingEndpointBase
|
||||
{
|
||||
get => GetValueOrDefault(IdGatewayMarketingBase, UrlGatewayMarketingDefault);
|
||||
set => AddOrUpdateValue(IdGatewayMarketingBase, value);
|
||||
}
|
||||
|
||||
public bool UseFakeLocation
|
||||
|
@ -1,4 +1,5 @@
|
||||
using eShopOnContainers.Core.Models.User;
|
||||
using eShopOnContainers.Core.Helpers;
|
||||
using eShopOnContainers.Core.Models.User;
|
||||
using eShopOnContainers.Core.Services.RequestProvider;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
@ -16,8 +17,8 @@ namespace eShopOnContainers.Core.Services.User
|
||||
|
||||
public async Task<UserInfo> GetUserInfoAsync(string authToken)
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.Instance.UserInfoEndpoint);
|
||||
string uri = builder.ToString();
|
||||
var uri = UriHelper.CombineUri(GlobalSetting.Instance.UserInfoEndpoint);
|
||||
|
||||
var userInfo = await _requestProvider.GetAsync<UserInfo>(uri, authToken);
|
||||
return userInfo;
|
||||
}
|
||||
|
@ -29,7 +29,12 @@ namespace eShopOnContainers.Core.ViewModels.Base
|
||||
{
|
||||
DialogService = ViewModelLocator.Resolve<IDialogService>();
|
||||
NavigationService = ViewModelLocator.Resolve<INavigationService>();
|
||||
GlobalSetting.Instance.BaseEndpoint = ViewModelLocator.Resolve<ISettingsService>().UrlBase;
|
||||
|
||||
var settingsService = ViewModelLocator.Resolve<ISettingsService>();
|
||||
|
||||
GlobalSetting.Instance.BaseIdentityEndpoint = settingsService.IdentityEndpointBase;
|
||||
GlobalSetting.Instance.BaseGatewayShoppingEndpoint = settingsService.GatewayShoppingEndpointBase;
|
||||
GlobalSetting.Instance.BaseGatewayMarketingEndpoint = settingsService.GatewayMarketingEndpointBase;
|
||||
}
|
||||
|
||||
public virtual Task InitializeAsync(object navigationData)
|
||||
|
@ -234,7 +234,7 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
IsLogin = false;
|
||||
LoginUrl = _identityService.CreateAuthorizationRequest();
|
||||
}
|
||||
else if (unescapedUrl.Contains(GlobalSetting.Instance.IdentityCallback))
|
||||
else if (unescapedUrl.Contains(GlobalSetting.Instance.Callback))
|
||||
{
|
||||
var authResponse = new AuthorizeResponse(url);
|
||||
if (!string.IsNullOrWhiteSpace(authResponse.Code))
|
||||
|
@ -16,7 +16,9 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
private bool _useAzureServices;
|
||||
private bool _allowGpsLocation;
|
||||
private bool _useFakeLocation;
|
||||
private string _endpoint;
|
||||
private string _identityEndpoint;
|
||||
private string _gatewayShoppingEndpoint;
|
||||
private string _gatewayMarketingEndpoint;
|
||||
private double _latitude;
|
||||
private double _longitude;
|
||||
private string _gpsWarningMessage;
|
||||
@ -32,7 +34,9 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
_dependencyService = dependencyService;
|
||||
|
||||
_useAzureServices = !_settingsService.UseMocks;
|
||||
_endpoint = _settingsService.UrlBase;
|
||||
_identityEndpoint = _settingsService.IdentityEndpointBase;
|
||||
_gatewayShoppingEndpoint = _settingsService.GatewayShoppingEndpointBase;
|
||||
_gatewayMarketingEndpoint = _settingsService.GatewayMarketingEndpointBase;
|
||||
_latitude = double.Parse(_settingsService.Latitude, CultureInfo.CurrentCulture);
|
||||
_longitude = double.Parse(_settingsService.Longitude, CultureInfo.CurrentCulture);
|
||||
_useFakeLocation = _settingsService.UseFakeLocation;
|
||||
@ -51,7 +55,7 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
{
|
||||
return !UseAzureServices
|
||||
? "Mock Services are simulated objects that mimic the behavior of real services using a controlled approach."
|
||||
: "When enabling the use of microservices/containers, the app will attempt to use real services deployed as Docker containers at the specified base endpoint, which will must be reachable through the network.";
|
||||
: "When enabling the use of microservices/containers, the app will attempt to use real services deployed as Docker/Kubernetes containers at the specified base endpoint, which will must be reachable through the network.";
|
||||
}
|
||||
}
|
||||
|
||||
@ -117,17 +121,45 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
}
|
||||
}
|
||||
|
||||
public string Endpoint
|
||||
public string IdentityEndpoint
|
||||
{
|
||||
get => _endpoint;
|
||||
get => _identityEndpoint;
|
||||
set
|
||||
{
|
||||
_endpoint = value;
|
||||
if (!string.IsNullOrEmpty(_endpoint))
|
||||
_identityEndpoint = value;
|
||||
if (!string.IsNullOrEmpty(_identityEndpoint))
|
||||
{
|
||||
UpdateEndpoint();
|
||||
UpdateIdentityEndpoint();
|
||||
}
|
||||
RaisePropertyChanged(() => Endpoint);
|
||||
RaisePropertyChanged(() => IdentityEndpoint);
|
||||
}
|
||||
}
|
||||
|
||||
public string GatewayShoppingEndpoint
|
||||
{
|
||||
get => _gatewayShoppingEndpoint;
|
||||
set
|
||||
{
|
||||
_gatewayShoppingEndpoint = value;
|
||||
if (!string.IsNullOrEmpty(_gatewayShoppingEndpoint))
|
||||
{
|
||||
UpdateGatewayShoppingEndpoint();
|
||||
}
|
||||
RaisePropertyChanged(() => GatewayShoppingEndpoint);
|
||||
}
|
||||
}
|
||||
|
||||
public string GatewayMarketingEndpoint
|
||||
{
|
||||
get => _gatewayMarketingEndpoint;
|
||||
set
|
||||
{
|
||||
_gatewayMarketingEndpoint = value;
|
||||
if (!string.IsNullOrEmpty(_gatewayMarketingEndpoint))
|
||||
{
|
||||
UpdateGatewayMarketingEndpoint();
|
||||
}
|
||||
RaisePropertyChanged(() => GatewayMarketingEndpoint);
|
||||
}
|
||||
}
|
||||
|
||||
@ -233,10 +265,20 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
_settingsService.UseMocks = !_useAzureServices;
|
||||
}
|
||||
|
||||
private void UpdateEndpoint()
|
||||
private void UpdateIdentityEndpoint()
|
||||
{
|
||||
// Update remote endpoint (save to local storage)
|
||||
GlobalSetting.Instance.BaseEndpoint = _settingsService.UrlBase = _endpoint;
|
||||
GlobalSetting.Instance.BaseIdentityEndpoint = _settingsService.IdentityEndpointBase = _identityEndpoint;
|
||||
}
|
||||
|
||||
private void UpdateGatewayShoppingEndpoint()
|
||||
{
|
||||
GlobalSetting.Instance.BaseGatewayShoppingEndpoint = _settingsService.GatewayShoppingEndpointBase = _gatewayShoppingEndpoint;
|
||||
}
|
||||
|
||||
private void UpdateGatewayMarketingEndpoint()
|
||||
{
|
||||
GlobalSetting.Instance.BaseGatewayMarketingEndpoint = _settingsService.GatewayMarketingEndpointBase = _gatewayMarketingEndpoint;
|
||||
}
|
||||
|
||||
private void UpdateFakeLocation()
|
||||
|
@ -168,10 +168,36 @@
|
||||
Style="{StaticResource SettingsStackLayoutStyle}"
|
||||
IsVisible="{Binding UseAzureServices}">
|
||||
<Label
|
||||
Text="Endpoint"
|
||||
Text="Identity Url"
|
||||
Style="{StaticResource HeaderLabelStyle}"/>
|
||||
<Entry
|
||||
Text="{Binding Endpoint, Mode=TwoWay}">
|
||||
Text="{Binding IdentityEndpoint, Mode=TwoWay}">
|
||||
<Entry.Style>
|
||||
<OnPlatform x:TypeArguments="Style">
|
||||
<On Platform="iOS, Android" Value="{StaticResource SettingsEntryStyle}" />
|
||||
<On Platform="UWP, WinRT, WinPhone" Value="{StaticResource SettingsUwpEntryStyle}" />
|
||||
</OnPlatform>
|
||||
</Entry.Style>
|
||||
</Entry>
|
||||
|
||||
<Label
|
||||
Text="Gateway Shopping Url"
|
||||
Style="{StaticResource HeaderLabelStyle}"/>
|
||||
<Entry
|
||||
Text="{Binding GatewayShoppingEndpoint, Mode=TwoWay}">
|
||||
<Entry.Style>
|
||||
<OnPlatform x:TypeArguments="Style">
|
||||
<On Platform="iOS, Android" Value="{StaticResource SettingsEntryStyle}" />
|
||||
<On Platform="UWP, WinRT, WinPhone" Value="{StaticResource SettingsUwpEntryStyle}" />
|
||||
</OnPlatform>
|
||||
</Entry.Style>
|
||||
</Entry>
|
||||
|
||||
<Label
|
||||
Text="Gateway Marketing Url"
|
||||
Style="{StaticResource HeaderLabelStyle}"/>
|
||||
<Entry
|
||||
Text="{Binding GatewayMarketingEndpoint, Mode=TwoWay}">
|
||||
<Entry.Style>
|
||||
<OnPlatform x:TypeArguments="Style">
|
||||
<On Platform="iOS, Android" Value="{StaticResource SettingsEntryStyle}" />
|
||||
|
@ -11,7 +11,9 @@ namespace eShopOnContainers.UnitTests.Mocks
|
||||
const string AccessToken = "access_token";
|
||||
const string IdToken = "id_token";
|
||||
const string IdUseMocks = "use_mocks";
|
||||
const string IdUrlBase = "url_base";
|
||||
const string IdIdentityBase = "url_base";
|
||||
const string IdGatewayMarketingBase = "url_marketing";
|
||||
const string IdGatewayShoppingBase = "url_shopping";
|
||||
const string IdUseFakeLocation = "use_fake_location";
|
||||
const string IdLatitude = "latitude";
|
||||
const string IdLongitude = "longitude";
|
||||
@ -23,7 +25,9 @@ namespace eShopOnContainers.UnitTests.Mocks
|
||||
readonly bool AllowGpsLocationDefault = false;
|
||||
readonly double FakeLatitudeDefault = 47.604610d;
|
||||
readonly double FakeLongitudeDefault = -122.315752d;
|
||||
readonly string UrlBaseDefault = "https://13.88.8.119";
|
||||
readonly string UrlIdentityDefault = "https://13.88.8.119";
|
||||
readonly string UrlGatewayMarketingDefault = "https://13.88.8.119";
|
||||
readonly string UrlGatewayShoppingDefault = "https://13.88.8.119";
|
||||
|
||||
public string AuthAccessToken
|
||||
{
|
||||
@ -43,10 +47,22 @@ namespace eShopOnContainers.UnitTests.Mocks
|
||||
set => AddOrUpdateValue(IdUseMocks, value);
|
||||
}
|
||||
|
||||
public string UrlBase
|
||||
public string IdentityEndpointBase
|
||||
{
|
||||
get => GetValueOrDefault(IdUrlBase, UrlBaseDefault);
|
||||
set => AddOrUpdateValue(IdUrlBase, value);
|
||||
get => GetValueOrDefault(IdIdentityBase, UrlIdentityDefault);
|
||||
set => AddOrUpdateValue(IdIdentityBase, value);
|
||||
}
|
||||
|
||||
public string GatewayShoppingEndpointBase
|
||||
{
|
||||
get => GetValueOrDefault(IdGatewayShoppingBase, UrlGatewayShoppingDefault);
|
||||
set => AddOrUpdateValue(IdGatewayShoppingBase, value);
|
||||
}
|
||||
|
||||
public string GatewayMarketingEndpointBase
|
||||
{
|
||||
get => GetValueOrDefault(IdGatewayMarketingBase, UrlGatewayMarketingDefault);
|
||||
set => AddOrUpdateValue(IdGatewayMarketingBase, value);
|
||||
}
|
||||
|
||||
public bool UseFakeLocation
|
||||
|
@ -17,11 +17,12 @@
|
||||
<PackageReference Include="Microsoft.ApplicationInsights.DependencyCollector" Version="2.6.1" />
|
||||
<PackageReference Include="Microsoft.ApplicationInsights.Kubernetes" Version="1.0.0-beta8" />
|
||||
<PackageReference Include="Microsoft.ApplicationInsights.ServiceFabric" Version="2.1.1-beta1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration.AzureKeyVault" Version="2.1.0" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.App" Version="2.1.0" />
|
||||
<PackageReference Include="Autofac.Extensions.DependencyInjection" Version="4.2.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Logging.AzureAppServices" Version="2.1.0" />
|
||||
<PackageReference Include="StackExchange.Redis.StrongName" Version="1.2.4" />
|
||||
<PackageReference Include="Swashbuckle.AspNetCore" Version="2.4.0" />
|
||||
<PackageReference Include="Swashbuckle.AspNetCore" Version="3.0.0" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
@ -3,7 +3,5 @@
|
||||
public class BasketSettings
|
||||
{
|
||||
public string ConnectionString { get; set; }
|
||||
|
||||
public string EventBusConnection { get; set; }
|
||||
}
|
||||
}
|
||||
|
@ -59,7 +59,7 @@ namespace Microsoft.eShopOnContainers.Services.Basket.API.Controllers
|
||||
public async Task<IActionResult> Checkout([FromBody]BasketCheckout basketCheckout, [FromHeader(Name = "x-requestid")] string requestId)
|
||||
{
|
||||
var userId = _identitySvc.GetUserIdentity();
|
||||
var userName = User.FindFirst(x => x.Type == "unique_name").Value;
|
||||
|
||||
|
||||
basketCheckout.RequestId = (Guid.TryParse(requestId, out Guid guid) && guid != Guid.Empty) ?
|
||||
guid : basketCheckout.RequestId;
|
||||
@ -71,6 +71,8 @@ namespace Microsoft.eShopOnContainers.Services.Basket.API.Controllers
|
||||
return BadRequest();
|
||||
}
|
||||
|
||||
var userName = User.FindFirst(x => x.Type == "unique_name").Value;
|
||||
|
||||
var eventMessage = new UserCheckoutAcceptedIntegrationEvent(userId, userName, basketCheckout.City, basketCheckout.Street,
|
||||
basketCheckout.State, basketCheckout.Country, basketCheckout.ZipCode, basketCheckout.CardNumber, basketCheckout.CardHolderName,
|
||||
basketCheckout.CardExpiration, basketCheckout.CardSecurityNumber, basketCheckout.CardTypeId, basketCheckout.Buyer, basketCheckout.RequestId, basket);
|
||||
|
@ -4,6 +4,7 @@ using Microsoft.AspNetCore.Builder;
|
||||
using Microsoft.AspNetCore.Hosting;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using System;
|
||||
using System.IO;
|
||||
|
||||
namespace Microsoft.eShopOnContainers.Services.Basket.API
|
||||
@ -26,7 +27,21 @@ namespace Microsoft.eShopOnContainers.Services.Basket.API
|
||||
.UseStartup<Startup>()
|
||||
.ConfigureAppConfiguration((builderContext, config) =>
|
||||
{
|
||||
config.AddEnvironmentVariables();
|
||||
var builtConfig = config.Build();
|
||||
|
||||
var configurationBuilder = new ConfigurationBuilder();
|
||||
|
||||
if (Convert.ToBoolean(builtConfig["UseVault"]))
|
||||
{
|
||||
configurationBuilder.AddAzureKeyVault(
|
||||
$"https://{builtConfig["Vault:Name"]}.vault.azure.net/",
|
||||
builtConfig["Vault:ClientId"],
|
||||
builtConfig["Vault:ClientSecret"]);
|
||||
}
|
||||
|
||||
configurationBuilder.AddEnvironmentVariables();
|
||||
|
||||
config.AddConfiguration(configurationBuilder.Build());
|
||||
})
|
||||
.ConfigureLogging((hostingContext, builder) =>
|
||||
{
|
||||
|
@ -14,5 +14,11 @@
|
||||
"ApplicationInsights": {
|
||||
"InstrumentationKey": ""
|
||||
},
|
||||
"EventBusRetryCount": 5
|
||||
"EventBusRetryCount": 5,
|
||||
"UseVault": false,
|
||||
"Vault": {
|
||||
"Name": "eshop",
|
||||
"ClientId": "your-clien-id",
|
||||
"ClientSecret": "your-client-secret"
|
||||
}
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using System.Security.Claims;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Basket.FunctionalTests.Base
|
||||
{
|
||||
class AutoAuthorizeMiddleware
|
||||
{
|
||||
public const string IDENTITY_ID = "9e3163b9-1ae6-4652-9dc6-7898ab7b7a00";
|
||||
|
||||
private readonly RequestDelegate _next;
|
||||
|
||||
public AutoAuthorizeMiddleware(RequestDelegate rd)
|
||||
{
|
||||
_next = rd;
|
||||
}
|
||||
|
||||
public async Task Invoke(HttpContext httpContext)
|
||||
{
|
||||
var identity = new ClaimsIdentity("cookies");
|
||||
|
||||
identity.AddClaim(new Claim("sub", IDENTITY_ID));
|
||||
identity.AddClaim(new Claim("unique_name", IDENTITY_ID));
|
||||
|
||||
httpContext.User.AddIdentity(identity);
|
||||
|
||||
await _next.Invoke(httpContext);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,43 @@
|
||||
using Microsoft.AspNetCore.Hosting;
|
||||
using Microsoft.AspNetCore.TestHost;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
|
||||
namespace Basket.FunctionalTests.Base
|
||||
{
|
||||
public class BasketScenarioBase
|
||||
{
|
||||
private const string ApiUrlBase = "api/v1/basket";
|
||||
|
||||
public TestServer CreateServer()
|
||||
{
|
||||
var path = Assembly.GetAssembly(typeof(BasketScenarioBase))
|
||||
.Location;
|
||||
|
||||
var hostBuilder = new WebHostBuilder()
|
||||
.UseContentRoot(Path.GetDirectoryName(path))
|
||||
.ConfigureAppConfiguration(cb =>
|
||||
{
|
||||
cb.AddJsonFile("appsettings.json", optional: false)
|
||||
.AddEnvironmentVariables();
|
||||
}).UseStartup<BasketTestsStartup>();
|
||||
|
||||
return new TestServer(hostBuilder);
|
||||
}
|
||||
|
||||
public static class Get
|
||||
{
|
||||
public static string GetBasket(int id)
|
||||
{
|
||||
return $"{ApiUrlBase}/{id}";
|
||||
}
|
||||
}
|
||||
|
||||
public static class Post
|
||||
{
|
||||
public static string Basket = $"{ApiUrlBase}/";
|
||||
public static string CheckoutOrder = $"{ApiUrlBase}/checkout";
|
||||
}
|
||||
}
|
||||
}
|
@ -1,14 +1,12 @@
|
||||
using FunctionalTests.Middleware;
|
||||
using Microsoft.AspNetCore.Builder;
|
||||
using Microsoft.AspNetCore.Hosting;
|
||||
using Microsoft.AspNetCore.Builder;
|
||||
using Microsoft.eShopOnContainers.Services.Basket.API;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
|
||||
namespace FunctionalTests.Services.Basket
|
||||
namespace Basket.FunctionalTests.Base
|
||||
{
|
||||
public class BasketTestsStartup : Startup
|
||||
class BasketTestsStartup : Startup
|
||||
{
|
||||
public BasketTestsStartup(IConfiguration configuration) : base(configuration)
|
||||
public BasketTestsStartup(IConfiguration env) : base(env)
|
||||
{
|
||||
}
|
||||
|
||||
@ -22,6 +20,6 @@ namespace FunctionalTests.Services.Basket
|
||||
{
|
||||
base.ConfigureAuth(app);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,17 +1,17 @@
|
||||
using Microsoft.AspNetCore.TestHost;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
|
||||
namespace IntegrationTests.Services.Extensions
|
||||
namespace Basket.FunctionalTests.Base
|
||||
{
|
||||
static class HttpClientExtensions
|
||||
{
|
||||
public static HttpClient CreateIdempotentClient(this TestServer server)
|
||||
{
|
||||
var client = server.CreateClient();
|
||||
|
||||
client.DefaultRequestHeaders.Add("x-requestid", Guid.NewGuid().ToString());
|
||||
|
||||
return client;
|
||||
}
|
||||
}
|
@ -0,0 +1,33 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
|
||||
<IsPackable>false</IsPackable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Remove="appsettings.json" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Content Include="appsettings.json">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.TestHost" Version="2.1.0" />
|
||||
<PackageReference Include="xunit" Version="2.3.1" />
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
||||
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
||||
<PackageReference Include="Moq" Version="4.8.1" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\..\Web\WebMVC\WebMVC.csproj" />
|
||||
<ProjectReference Include="..\..\Location\Locations.API\Locations.API.csproj" />
|
||||
<ProjectReference Include="..\Basket.API\Basket.API.csproj" />
|
||||
</ItemGroup>
|
||||
</Project>
|
@ -1,4 +1,4 @@
|
||||
using IntegrationTests.Services.Extensions;
|
||||
using Basket.FunctionalTests.Base;
|
||||
using Microsoft.eShopOnContainers.Services.Basket.API.Model;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
@ -8,7 +8,7 @@ using System.Threading.Tasks;
|
||||
using WebMVC.Models;
|
||||
using Xunit;
|
||||
|
||||
namespace IntegrationTests.Services.Basket
|
||||
namespace Basket.FunctionalTests
|
||||
{
|
||||
public class BasketScenarios
|
||||
: BasketScenarioBase
|
||||
@ -17,7 +17,7 @@ namespace IntegrationTests.Services.Basket
|
||||
public async Task Post_basket_and_response_ok_status_code()
|
||||
{
|
||||
using (var server = CreateServer())
|
||||
{
|
||||
{
|
||||
var content = new StringContent(BuildBasket(), UTF8Encoding.UTF8, "application/json");
|
||||
var response = await server.CreateClient()
|
||||
.PostAsync(Post.Basket, content);
|
||||
@ -44,10 +44,12 @@ namespace IntegrationTests.Services.Basket
|
||||
using (var server = CreateServer())
|
||||
{
|
||||
var contentBasket = new StringContent(BuildBasket(), UTF8Encoding.UTF8, "application/json");
|
||||
|
||||
await server.CreateClient()
|
||||
.PostAsync(Post.Basket, contentBasket);
|
||||
|
||||
var contentCheckout = new StringContent(BuildCheckout(), UTF8Encoding.UTF8, "application/json");
|
||||
|
||||
var response = await server.CreateIdempotentClient()
|
||||
.PostAsync(Post.CheckoutOrder, contentCheckout);
|
||||
|
||||
@ -57,7 +59,7 @@ namespace IntegrationTests.Services.Basket
|
||||
|
||||
string BuildBasket()
|
||||
{
|
||||
var order = new CustomerBasket("1234");
|
||||
var order = new CustomerBasket(AutoAuthorizeMiddleware.IDENTITY_ID);
|
||||
|
||||
order.Items.Add(new BasketItem
|
||||
{
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user