Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
98 changes: 2 additions & 96 deletions dev/ApplicationData/M.W.S.ApplicationData.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
#include "Microsoft.Windows.Storage.ApplicationData.g.cpp"

#include "M.W.S.ApplicationDataContainer.h"
#include "UnpackagedApplicationData.h"

#include <shlobj_core.h>

Expand All @@ -24,25 +25,15 @@ static_assert(static_cast<int32_t>(winrt::Microsoft::Windows::Storage::Applicati
namespace winrt::Microsoft::Windows::Storage::implementation
{
ApplicationData::ApplicationData(hstring const& packageFamilyName) :
m_unpackagedApplicationData(),
m_applicationData(nullptr),
m_packageFamilyName(packageFamilyName)
{
}
ApplicationData::ApplicationData(winrt::Windows::Storage::ApplicationData& value, hstring const& packageFamilyName) :
m_unpackagedApplicationData(),
m_applicationData(value),
m_packageFamilyName(packageFamilyName)
{
}
ApplicationData::ApplicationData(hstring const& publisher, hstring const& product) :
m_unpackagedApplicationData(),
m_applicationData(nullptr),
m_packageFamilyName()
{
auto unpackagedApplicationData{ new ::Microsoft::Windows::Storage::UnpackagedApplicationData(publisher, product) };
m_unpackagedApplicationData.reset(unpackagedApplicationData);
}
winrt::Microsoft::Windows::Storage::ApplicationData ApplicationData::GetDefault()
{
const auto packageFamilyName{ ::AppModel::Identity::GetCurrentPackageFamilyName<winrt::hstring>() };
Expand Down Expand Up @@ -114,25 +105,15 @@ namespace winrt::Microsoft::Windows::Storage::implementation
_VerifyPublisher(publisher);
_VerifyProduct(product);

return winrt::make<winrt::Microsoft::Windows::Storage::implementation::ApplicationData>(publisher, product);
return winrt::make<winrt::Microsoft::Windows::Storage::implementation::UnpackagedApplicationData>(publisher, product);
}
bool ApplicationData::IsMachinePathSupported()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->IsMachinePathSupported();
}

const auto path{ _MachinePath(m_packageFamilyName) };
return !path.empty();
}
hstring ApplicationData::LocalCachePath()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->LocalCachePath();
}

if (!m_applicationData)
{
return winrt::hstring{};
Expand All @@ -141,11 +122,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
hstring ApplicationData::LocalPath()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->LocalPath();
}

if (!m_applicationData)
{
return winrt::hstring{};
Expand All @@ -154,21 +130,11 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
hstring ApplicationData::MachinePath()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->MachinePath();
}

const auto path{ _MachinePath(m_packageFamilyName) };
return winrt::hstring{ path.c_str() };
}
hstring ApplicationData::SharedLocalPath()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->SharedLocalPath();
}

if (!m_applicationData)
{
return winrt::hstring{};
Expand All @@ -187,11 +153,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
hstring ApplicationData::TemporaryPath()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->TemporaryPath();
}

if (!m_applicationData)
{
return winrt::hstring{};
Expand All @@ -200,11 +161,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
winrt::Windows::Storage::StorageFolder ApplicationData::LocalCacheFolder()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->LocalCacheFolder();
}

if (!m_applicationData)
{
return nullptr;
Expand All @@ -213,11 +169,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
winrt::Windows::Storage::StorageFolder ApplicationData::LocalFolder()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->LocalFolder();
}

if (!m_applicationData)
{
return nullptr;
Expand All @@ -226,11 +177,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
winrt::Windows::Storage::StorageFolder ApplicationData::MachineFolder()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->MachineFolder();
}

const auto path{ MachinePath() };
if (path.empty())
{
Expand All @@ -240,11 +186,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
winrt::Windows::Storage::StorageFolder ApplicationData::SharedLocalFolder()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->SharedLocalFolder();
}

if (!m_applicationData)
{
return nullptr;
Expand All @@ -253,11 +194,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
winrt::Windows::Storage::StorageFolder ApplicationData::TemporaryFolder()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->TemporaryFolder();
}

if (!m_applicationData)
{
return nullptr;
Expand All @@ -266,11 +202,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
winrt::Microsoft::Windows::Storage::ApplicationDataContainer ApplicationData::LocalSettings()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->LocalSettings();
}

if (!m_applicationData)
{
return nullptr;
Expand All @@ -280,11 +211,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
winrt::Windows::Foundation::IAsyncAction ApplicationData::ClearAsync(winrt::Microsoft::Windows::Storage::ApplicationDataLocality locality)
{
if (m_unpackagedApplicationData)
{
co_await m_unpackagedApplicationData->ClearAsync(locality);
}

if (!m_applicationData)
{
co_return;
Expand All @@ -300,11 +226,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
winrt::Windows::Foundation::IAsyncAction ApplicationData::ClearPublisherCacheFolderAsync(hstring folderName)
{
if (m_unpackagedApplicationData)
{
co_await m_unpackagedApplicationData->ClearPublisherCacheFolderAsync(folderName);
}

if (!m_applicationData)
{
co_return;
Expand All @@ -313,23 +234,13 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
void ApplicationData::Close()
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->Close();
}

if (m_applicationData)
{
m_applicationData.Close();
}
}
hstring ApplicationData::GetPublisherCachePath(hstring const& folderName)
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->GetPublisherCachePath(folderName);
}

auto folder{ GetPublisherCacheFolder(folderName) };
winrt::hstring path;
if (folder)
Expand All @@ -340,11 +251,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
winrt::Windows::Storage::StorageFolder ApplicationData::GetPublisherCacheFolder(hstring const& folderName)
{
if (m_unpackagedApplicationData)
{
return m_unpackagedApplicationData->GetPublisherCacheFolder(folderName);
}

if (!m_applicationData)
{
return nullptr;
Expand Down
4 changes: 0 additions & 4 deletions dev/ApplicationData/M.W.S.ApplicationData.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,13 @@

#include "Microsoft.Windows.Storage.ApplicationData.g.h"

#include "UnpackagedApplicationData.h"

namespace winrt::Microsoft::Windows::Storage::implementation
{
struct ApplicationData : ApplicationDataT<ApplicationData>
{
ApplicationData() = default;
ApplicationData(hstring const& packageFamilyName);
ApplicationData(winrt::Windows::Storage::ApplicationData& value, hstring const& packageFamilyName);
ApplicationData(hstring const& publisher, hstring const& product);

static winrt::Microsoft::Windows::Storage::ApplicationData GetDefault();
static winrt::Microsoft::Windows::Storage::ApplicationData GetForUser(winrt::Windows::System::User user);
Expand Down Expand Up @@ -47,7 +44,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
static void _VerifyProduct(winrt::hstring const& string);

private:
std::unique_ptr<::Microsoft::Windows::Storage::UnpackagedApplicationData> m_unpackagedApplicationData;
winrt::Windows::Storage::ApplicationData m_applicationData;
winrt::hstring m_packageFamilyName;
};
Expand Down
42 changes: 0 additions & 42 deletions dev/ApplicationData/M.W.S.ApplicationDataContainer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,26 +6,14 @@
#include "M.W.S.ApplicationDataContainer.h"
#include "Microsoft.Windows.Storage.ApplicationDataContainer.g.cpp"

#include "UnpackagedApplicationDataContainer.h"

namespace winrt::Microsoft::Windows::Storage::implementation
{
ApplicationDataContainer::ApplicationDataContainer(winrt::Windows::Storage::ApplicationDataContainer const& value) :
m_applicationDataContainer(value)
{
}
ApplicationDataContainer::ApplicationDataContainer(std::shared_ptr<::Microsoft::Windows::Storage::UnpackagedApplicationDataContainer> const& value) :
m_unpackagedApplicationDataContainer(value),
m_applicationDataContainer(nullptr)
{
}
winrt::Windows::Foundation::Collections::IMap<hstring, winrt::Microsoft::Windows::Storage::ApplicationDataContainer> ApplicationDataContainer::Containers()
{
if (m_unpackagedApplicationDataContainer)
{
return m_unpackagedApplicationDataContainer->Containers();
}

winrt::Windows::Foundation::Collections::IMap<hstring, winrt::Microsoft::Windows::Storage::ApplicationDataContainer> map{ winrt::single_threaded_map<winrt::hstring, winrt::Microsoft::Windows::Storage::ApplicationDataContainer>() };
auto containers{ m_applicationDataContainer.Containers() };
for (auto container : containers)
Expand All @@ -37,20 +25,10 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
hstring ApplicationDataContainer::Name()
{
if (m_unpackagedApplicationDataContainer)
{
return m_unpackagedApplicationDataContainer->Name();
}

return m_applicationDataContainer.Name();
}
winrt::Microsoft::Windows::Storage::ApplicationDataLocality ApplicationDataContainer::Locality()
{
if (m_unpackagedApplicationDataContainer)
{
return m_unpackagedApplicationDataContainer->Locality();
}

static_assert(static_cast<int32_t>(winrt::Microsoft::Windows::Storage::ApplicationDataLocality::Local) == static_cast<int32_t>(winrt::Windows::Storage::ApplicationDataLocality::Local));
static_assert(static_cast<int32_t>(winrt::Microsoft::Windows::Storage::ApplicationDataLocality::LocalCache) == static_cast<int32_t>(winrt::Windows::Storage::ApplicationDataLocality::LocalCache));
static_assert(static_cast<int32_t>(winrt::Microsoft::Windows::Storage::ApplicationDataLocality::Temporary) == static_cast<int32_t>(winrt::Windows::Storage::ApplicationDataLocality::Temporary));
Expand All @@ -59,29 +37,14 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
winrt::Windows::Foundation::Collections::IPropertySet ApplicationDataContainer::Values()
{
if (m_unpackagedApplicationDataContainer)
{
return m_unpackagedApplicationDataContainer->Values();
}

return m_applicationDataContainer.Values();
}
void ApplicationDataContainer::Close()
{
if (m_unpackagedApplicationDataContainer)
{
return m_unpackagedApplicationDataContainer->Close();
}

return m_applicationDataContainer.Close();
}
winrt::Microsoft::Windows::Storage::ApplicationDataContainer ApplicationDataContainer::CreateContainer(hstring const& name, winrt::Microsoft::Windows::Storage::ApplicationDataCreateDisposition const& disposition)
{
if (m_unpackagedApplicationDataContainer)
{
return m_unpackagedApplicationDataContainer->CreateContainer(name, disposition);
}

static_assert(static_cast<int32_t>(winrt::Microsoft::Windows::Storage::ApplicationDataCreateDisposition::Always) == static_cast<int32_t>(winrt::Windows::Storage::ApplicationDataCreateDisposition::Always));
static_assert(static_cast<int32_t>(winrt::Microsoft::Windows::Storage::ApplicationDataCreateDisposition::Existing) == static_cast<int32_t>(winrt::Windows::Storage::ApplicationDataCreateDisposition::Existing));

Expand All @@ -90,11 +53,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
}
void ApplicationDataContainer::DeleteContainer(hstring const& name)
{
if (m_unpackagedApplicationDataContainer)
{
return m_unpackagedApplicationDataContainer->DeleteContainer(name);
}

m_applicationDataContainer.DeleteContainer(name);
}
}
7 changes: 0 additions & 7 deletions dev/ApplicationData/M.W.S.ApplicationDataContainer.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,12 @@

#include "Microsoft.Windows.Storage.ApplicationDataContainer.g.h"

namespace Microsoft::Windows::Storage
{
struct UnpackagedApplicationDataContainer;
}

namespace winrt::Microsoft::Windows::Storage::implementation
{
struct ApplicationDataContainer : ApplicationDataContainerT<ApplicationDataContainer>
{
ApplicationDataContainer() = default;
ApplicationDataContainer(winrt::Windows::Storage::ApplicationDataContainer const& value);
ApplicationDataContainer(std::shared_ptr<::Microsoft::Windows::Storage::UnpackagedApplicationDataContainer> const& value);

winrt::Windows::Foundation::Collections::IMap<hstring, winrt::Microsoft::Windows::Storage::ApplicationDataContainer> Containers();
hstring Name();
Expand All @@ -27,7 +21,6 @@ namespace winrt::Microsoft::Windows::Storage::implementation
void DeleteContainer(hstring const& name);

private:
std::shared_ptr<::Microsoft::Windows::Storage::UnpackagedApplicationDataContainer> m_unpackagedApplicationDataContainer;
winrt::Windows::Storage::ApplicationDataContainer m_applicationDataContainer;
};
}
Loading