function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
ForceCoderForceCoder 

Chatter Limits in Apex

I know that the limit to the number of entities that a user can follow is 500. 

 

There is an Idea (http://success.salesforce.com/ideaView?id=08730000000HgdbAAC) to increase the limit so I don't want to hardcode 500 anywhere in case it changes.

 

My question is how can I programatically get that number in Apex? 

 

The use case is code that automatically creates EntitySubscriptions, but fails when the 500 is reached.  I know that I can surround the insert with a try/catch, but reaching 500 isn't really an exception case. I want to be able to detect it without having to insert and without having to hardcode a 500 or have a 500 in a custom setting. 

 

Ideally, I'd be able to query how many the user has and check it against a number that I get through a built-in SF class or something to that effect.

 

I don't see anything in the Limits methods:

http://www.salesforce.com/us/developer/docs/apexcode/index_Left.htm#StartTopic=Content/apex_methods_system_limits.htm?SearchType=Stem

 

Thanks.

Jia HuJia Hu
Integer a = [Select Count() from EntitySubscription where SubscriberId = 'UserID'];
If( a < 500) {
System.debug(' ---------' + a);
}
ForceCoderForceCoder

Thanks for responding, but what I want to know is how to get the 500 programmatically without hard coding or getting through a custom setting...or if there is another way? I don't want to have to deploy code or remember to change a custom setting when SF changes the limit.

Also, have you tried running that code as a non sys admin user? SF throws a runtime error if I don't include a Limit clause that limits it to at most 1000 possible records when querying EntitySubscriptions as a non sys admin user.  Error in that situation (below) is easily fixed by adding Limit 500 in the SOQL statement.

 

caused by: System.QueryException: Implementation restriction: EntitySubscription only allows security evaluation for non-admin users when LIMIT is specified and at most 1000