From 9d1e47b4b2a6c7539f50d8cd72bc39abafecb46f Mon Sep 17 00:00:00 2001 From: brianmfear Date: Tue, 2 Feb 2016 17:57:15 -0700 Subject: [PATCH 1/4] Fix Describe Bug This fix changes the code to API version 35 so some new objects can be described, and provides a small fix that prevents a System.NullPointerException when the ObjectPermissions query returns SObjectType values that cannot be described. --- .../src/classes/UserAccessDetailsController.cls | 11 ++++++++--- .../classes/UserAccessDetailsController.cls-meta.xml | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/UserAccessVisualization/src/classes/UserAccessDetailsController.cls b/UserAccessVisualization/src/classes/UserAccessDetailsController.cls index 3eca8b6..152497c 100644 --- a/UserAccessVisualization/src/classes/UserAccessDetailsController.cls +++ b/UserAccessVisualization/src/classes/UserAccessDetailsController.cls @@ -274,7 +274,6 @@ public class UserAccessDetailsController { public List getObjectLabels() { if (null == xObjectLabels) { List result = new List(); - Map describe = Schema.getGlobalDescribe(); // We can't really depend on describe to give us the object we want // since that includes a lot of stuff that doesn't support CRUD @@ -286,8 +285,14 @@ public class UserAccessDetailsController { // for now. for (ObjectPermissions op : [SELECT SObjectType FROM ObjectPermissions WHERE Parent.Profile.Name = 'System Administrator']) { - result.add(new NameLabel(op.SObjectType, - describe.get(op.SObjectType).getDescribe().getLabel())); + // Try to get the label, but use the API name if we do not have a describe for the + // object. This may occur because this class's version is too low and does not support + // the new object. + Type sObjectType = Type.forName('Schema.'+op.SObjectType); + result.add( + new NameLabel(op.SObjectType, + sObjectType==null?op.SObjectType:((SObject)sObjectType.newInstance()).getSObjectType().getDescribe().getLabel()) + ); } result.sort(); xObjectLabels = result; diff --git a/UserAccessVisualization/src/classes/UserAccessDetailsController.cls-meta.xml b/UserAccessVisualization/src/classes/UserAccessDetailsController.cls-meta.xml index b211a09..d219ea1 100644 --- a/UserAccessVisualization/src/classes/UserAccessDetailsController.cls-meta.xml +++ b/UserAccessVisualization/src/classes/UserAccessDetailsController.cls-meta.xml @@ -1,5 +1,5 @@ - 28.0 + 35.0 Active From 56cc3f7b0789907a18061b38d036d5793d6aaff8 Mon Sep 17 00:00:00 2001 From: brianmfear Date: Thu, 18 Feb 2016 10:50:29 -0700 Subject: [PATCH 2/4] Create .gitignore Ignores files created by Force.com IDE that should be referenced per org. --- UserAccessVisualization/.gitignore | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 UserAccessVisualization/.gitignore diff --git a/UserAccessVisualization/.gitignore b/UserAccessVisualization/.gitignore new file mode 100644 index 0000000..a6afc0a --- /dev/null +++ b/UserAccessVisualization/.gitignore @@ -0,0 +1,2 @@ +/Referenced Packages/ +/.settings/ From 86e9bc82541b320489f6235f70e808f3c73e214e Mon Sep 17 00:00:00 2001 From: brianmfear Date: Thu, 18 Feb 2016 10:56:57 -0700 Subject: [PATCH 3/4] Updates Project to latest version. --- UserAccessVisualization/.project | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/UserAccessVisualization/.project b/UserAccessVisualization/.project index 4caa6e6..5765dab 100644 --- a/UserAccessVisualization/.project +++ b/UserAccessVisualization/.project @@ -10,8 +10,14 @@ + + com.salesforce.ide.builder.online + + + com.salesforce.ide.nature.default + com.salesforce.ide.nature.online From 81c83f7e93543b9599790ab55724e4cbfb4727ba Mon Sep 17 00:00:00 2001 From: brianmfear Date: Thu, 18 Feb 2016 10:57:41 -0700 Subject: [PATCH 4/4] Updates package.xml to 33.0. --- UserAccessVisualization/src/package.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UserAccessVisualization/src/package.xml b/UserAccessVisualization/src/package.xml index 3a6776e..a917be7 100644 --- a/UserAccessVisualization/src/package.xml +++ b/UserAccessVisualization/src/package.xml @@ -20,5 +20,5 @@ * StaticResource - 25.0 + 33.0