Skip to content

Commit

Permalink
Dev (#124)
Browse files Browse the repository at this point in the history
Dev - 10.4 release has been posted to ArcGIS Online; need to now sync up dev branch to master branch and tag master as 10.4 release
  • Loading branch information
eggwhites committed May 2, 2016
1 parent 6038468 commit 3856557
Show file tree
Hide file tree
Showing 63 changed files with 7,674 additions and 1,728 deletions.
22 changes: 12 additions & 10 deletions src/OSMClassExtension/OSMClassExtension.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>ESRI.ArcGIS.OSM.OSMClassExtension</RootNamespace>
<AssemblyName>OSMClassExtension</AssemblyName>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<FileUpgradeFlags>
</FileUpgradeFlags>
Expand Down Expand Up @@ -52,6 +52,7 @@
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
<RegisterForComInterop>false</RegisterForComInterop>
<PlatformTarget>x86</PlatformTarget>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
Expand All @@ -62,43 +63,44 @@
<WarningLevel>4</WarningLevel>
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
<RegisterForComInterop>false</RegisterForComInterop>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="ESRI.ArcGIS.Carto, Version=10.0.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
</Reference>
<Reference Include="ESRI.ArcGIS.DataSourcesFile, Version=10.0.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
</Reference>
<Reference Include="ESRI.ArcGIS.DataSourcesGDB, Version=10.0.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
</Reference>
<Reference Include="ESRI.ArcGIS.Display, Version=10.0.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
</Reference>
<Reference Include="ESRI.ArcGIS.Editor, Version=10.0.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
</Reference>
<Reference Include="ESRI.ArcGIS.Geodatabase, Version=10.0.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
</Reference>
<Reference Include="ESRI.ArcGIS.Geometry, Version=10.0.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
</Reference>
<Reference Include="ESRI.ArcGIS.System, Version=10.0.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
</Reference>
<Reference Include="ESRI.ArcGIS.SystemUI, Version=10.0.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
</Reference>
<Reference Include="ESRI.ArcGIS.Version, Version=10.0.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
Expand Down
2 changes: 1 addition & 1 deletion src/OSMClassExtension/OSMClassExtensionManager.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// (c) Copyright Esri, 2010 - 2013
// (c) Copyright Esri, 2010 - 2016
// This source is subject to the Apache 2.0 License.
// Please see http://www.apache.org/licenses/LICENSE-2.0.html for details.
// All other rights reserved.
Expand Down
13 changes: 11 additions & 2 deletions src/OSMClassExtension/OSMClassExtensionStrings.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

62 changes: 36 additions & 26 deletions src/OSMClassExtension/OSMUtility.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// (c) Copyright Esri, 2010 - 2013
// (c) Copyright Esri, 2010 - 2016
// This source is subject to the Apache 2.0 License.
// Please see http://www.apache.org/licenses/LICENSE-2.0.html for details.
// All other rights reserved.
Expand Down Expand Up @@ -462,48 +462,52 @@ public tag[] retrieveOSMTags(IRow row, int osmTagFieldIndex, IWorkspace workspac
}

IEnumDomain enumDomain = workspaceDomains.Domains;
enumDomain.Reset();
IDomain currentDomain = enumDomain.Next();

while (currentDomain != null)
if (enumDomain != null)
{
int extensionPosition = currentDomain.Name.IndexOf(extensionString);
enumDomain.Reset();
IDomain currentDomain = enumDomain.Next();

// only check the attributes that are relevant for the current geometry type
if (extensionPosition > 0)
while (currentDomain != null)
{
string attributeName = currentDomain.Name.Substring(0, extensionPosition);
int attributefieldIndex = row.Fields.FindField(attributeName);
int extensionPosition = currentDomain.Name.IndexOf(extensionString);

if (attributefieldIndex > -1)
// only check the attributes that are relevant for the current geometry type
if (extensionPosition > 0)
{
object attributeValue = row.get_Value(attributefieldIndex);
string attributeName = currentDomain.Name.Substring(0, extensionPosition);
int attributefieldIndex = row.Fields.FindField(attributeName);

if (attributeValue != DBNull.Value)
if (attributefieldIndex > -1)
{
// check if the current attribute value is already in the tag listing
if (tagDictionary.ContainsKey(attributeName) == false)
{
// create a new tag to store
tag explicitAttributeTag = new tag();
explicitAttributeTag.k = attributeName;
explicitAttributeTag.v = Convert.ToString(attributeValue);
object attributeValue = row.get_Value(attributefieldIndex);

if (String.IsNullOrEmpty(explicitAttributeTag.v) == false)
if (attributeValue != DBNull.Value)
{
// check if the current attribute value is already in the tag listing
if (tagDictionary.ContainsKey(attributeName) == false)
{
tagDictionary.Add(attributeName, explicitAttributeTag);
// create a new tag to store
tag explicitAttributeTag = new tag();
explicitAttributeTag.k = attributeName;
explicitAttributeTag.v = Convert.ToString(attributeValue);

if (String.IsNullOrEmpty(explicitAttributeTag.v) == false)
{
tagDictionary.Add(attributeName, explicitAttributeTag);
}
}
}
}
}

currentDomain = enumDomain.Next();
}

currentDomain = enumDomain.Next();
// copy the values back into the array
retrievedTags = new tag[tagDictionary.Count];
tagDictionary.Values.CopyTo(retrievedTags, 0);
}

// copy the values back into the array
retrievedTags = new tag[tagDictionary.Count];
tagDictionary.Values.CopyTo(retrievedTags, 0);
}
return retrievedTags;
}
Expand Down Expand Up @@ -1387,6 +1391,12 @@ public bool DoesHaveKeys(way currentway)
IList<tag> relevantTags = new List<tag>();
bool doesHaveKeys = false;

if (currentway == null)
throw new ArgumentNullException("currentway", "Unexpected value.");

if (currentway.tag == null)
return doesHaveKeys;

try
{
string[] non_relevant = { "created_by", "source", "attribution", "note", "version", "type" };
Expand Down
18 changes: 17 additions & 1 deletion src/OSMClassExtension/OpenStreetMapClassExtension.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// (c) Copyright Esri, 2010 - 2013
// (c) Copyright Esri, 2010 - 2016
// This source is subject to the Apache 2.0 License.
// Please see http://www.apache.org/licenses/LICENSE-2.0.html for details.
// All other rights reserved.
Expand Down Expand Up @@ -2994,6 +2994,22 @@ private IPointCollection checkAllPoints(IFeature newlyCreatedFeature, IFeatureCl
foundFeature.Store();
}

else if (!comparison && action.ToLower(CultureInfo.InvariantCulture).Equals("create"))
{
// for split the new higher-order geometry contains the (existing) nodes but it will also
// be deleted later-on due to the split behavior
// update the ref count on the node
if (pointwayRefCountFieldIndex > -1)
{
int currentRefCount = Convert.ToInt32(foundFeature.get_Value(pointwayRefCountFieldIndex));

currentRefCount = currentRefCount + 1;
foundFeature.set_Value(pointwayRefCountFieldIndex, currentRefCount);

foundFeature.Store();
}
}

addVertexCounter = addVertexCounter + 1;
}
else
Expand Down
2 changes: 1 addition & 1 deletion src/OSMClassExtension/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("ESRI")]
[assembly: AssemblyProduct("ArcGIS Editor for OpenStreetMap")]
[assembly: AssemblyCopyright("Copyright © ESRI 2010 - 2012")]
[assembly: AssemblyCopyright("Copyright © ESRI 2010 - 2016")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

Expand Down
2 changes: 1 addition & 1 deletion src/OSMClassExtension/SqlFormatter.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// (c) Copyright Esri, 2010 - 2013
// (c) Copyright Esri, 2010 - 2016
// This source is subject to the Apache 2.0 License.
// Please see http://www.apache.org/licenses/LICENSE-2.0.html for details.
// All other rights reserved.
Expand Down
2 changes: 1 addition & 1 deletion src/OSMClassExtension/osm_v0_6.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// (c) Copyright Esri, 2010 - 2013
// (c) Copyright Esri, 2010 - 2016
// This source is subject to the Apache 2.0 License.
// Please see http://www.apache.org/licenses/LICENSE-2.0.html for details.
// All other rights reserved.
Expand Down
2 changes: 1 addition & 1 deletion src/OSMClassExtension64/ComReleaser.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// (c) Copyright Esri, 2010 - 2013
// (c) Copyright Esri, 2010 - 2016
// This source is subject to the Apache 2.0 License.
// Please see http://www.apache.org/licenses/LICENSE-2.0.html for details.
// All other rights reserved.
Expand Down
39 changes: 20 additions & 19 deletions src/OSMClassExtension64/OSMClassExtension64.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>ESRI.ArcGIS.OSM.OSMClassExtension</RootNamespace>
<AssemblyName>OSMClassExtension64</AssemblyName>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<IsWebBootstrapper>false</IsWebBootstrapper>
<SccProjectName>
Expand All @@ -21,6 +21,7 @@
</SccAuxPath>
<SccProvider>
</SccProvider>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
Expand All @@ -32,6 +33,7 @@
<WarningLevel>4</WarningLevel>
<PlatformTarget>x64</PlatformTarget>
<RegisterForComInterop>false</RegisterForComInterop>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
Expand All @@ -40,49 +42,48 @@
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="ESRI.ArcGIS.Carto, Version=10.1.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<Reference Include="ESRI.ArcGIS.Carto, Version=10.4.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<EmbedInteropTypes>True</EmbedInteropTypes>
<Private>False</Private>
</Reference>
<Reference Include="ESRI.ArcGIS.DataSourcesFile, Version=10.1.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<Reference Include="ESRI.ArcGIS.DataSourcesFile, Version=10.4.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
<Private>False</Private>
</Reference>
<Reference Include="ESRI.ArcGIS.DataSourcesGDB, Version=10.1.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<Reference Include="ESRI.ArcGIS.DataSourcesGDB, Version=10.4.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
<Private>False</Private>
</Reference>
<Reference Include="ESRI.ArcGIS.Display, Version=10.1.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<Reference Include="ESRI.ArcGIS.Display, Version=10.4.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
<Private>False</Private>
</Reference>
<Reference Include="ESRI.ArcGIS.Geodatabase, Version=10.1.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<Reference Include="ESRI.ArcGIS.Geodatabase, Version=10.4.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
<Private>False</Private>
</Reference>
<Reference Include="ESRI.ArcGIS.Geometry, Version=10.1.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<Reference Include="ESRI.ArcGIS.Geometry, Version=10.4.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
<Private>False</Private>
</Reference>
<Reference Include="ESRI.ArcGIS.System, Version=10.1.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<Reference Include="ESRI.ArcGIS.System, Version=10.4.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
<Private>False</Private>
</Reference>
<Reference Include="ESRI.ArcGIS.SystemUI, Version=10.1.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<Reference Include="ESRI.ArcGIS.SystemUI, Version=10.4.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<EmbedInteropTypes>True</EmbedInteropTypes>
<EmbedInteropTypes>False</EmbedInteropTypes>
<Private>False</Private>
</Reference>
<Reference Include="ESRI.ArcGIS.Version, Version=10.1.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<Reference Include="ESRI.ArcGIS.Version, Version=10.4.0.0, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<Private>False</Private>
</Reference>
Expand Down
2 changes: 1 addition & 1 deletion src/OSMEditor/BasicAuthenticationCtrl.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// (c) Copyright Esri, 2010 - 2013
// (c) Copyright Esri, 2010 - 2016
// This source is subject to the Apache 2.0 License.
// Please see http://www.apache.org/licenses/LICENSE-2.0.html for details.
// All other rights reserved.
Expand Down
Loading

0 comments on commit 3856557

Please sign in to comment.