call ERTaggableEntity.setTaggableEntityForEntityNamed inside of 
taggableEntity() where it lazily creates the new instance when it doesn't have 
one.

ms

On Oct 19, 2012, at 3:53 PM, James Cicenia <[email protected]> wrote:

> Looks like:
> 
>   public static EOEntity registerTaggable(EOEntity entity, String 
> tagsRelationshipName) {
>     EOEntity tagEntity = 
> entity.model().modelGroup().entityNamed(ERTag.ENTITY_NAME);
>     if (tagEntity == null) {
>       throw new IllegalArgumentException("There is no entity named '" + 
> ERTag.ENTITY_NAME + "' in this model group.");
>     }
> ======>>>    return ERTaggableEntity.registerTaggable(entity, 
> tagsRelationshipName, tagEntity, null);
>   }
> 
> looks like that null is the culprit.
> 
> which calls:
> 
>   public static EOEntity registerTaggable(EOEntity entity, String 
> tagsRelationshipName, EOEntity tagEntity, Class<? extends 
> ERTaggableEntity<?>> taggableEntity) {
> 
> which contains:
> 
>     if (taggableEntity != null) {
>       ERTaggableEntity.setTaggableEntityForEntityNamed(taggableEntity, 
> entity.name());
>     }
> 
> 
> Advice?
> 
> James
> 
> 
> 
> On Oct 19, 2012, at 1:32 PM, Mike Schrag <[email protected]> wrote:
> 
>> I'm guessing somehow your taggable entity isn't getting registered … I would 
>> put some debug into registerTaggable to see if anything calls that for your 
>> entity, and if not, probably taggableEntity() should internally call 
>> setTaggableEntity in the if-block where it lazily makes an entity so you 
>> cache the one that it creates. If you didn't have an instance registered 
>> earlier, that would always make a new one … You should be able to verify 
>> where exactly you're getting a new one.
>> 
>> ms
>> 
>> On Oct 19, 2012, at 2:17 PM, James Cicenia <[email protected]> wrote:
>> 
>>> Tracing it through to :
>>> 
>>> private void addNormalizedTags(NSMutableSet<String> set, Object[] tags) {
>>>     for (Object objTag : tags) {
>>>       if (objTag instanceof String) {
>>>         String strTag = (String) objTag;
>>>         String normalizedTag = _normalizer.normalize(strTag);
>>> 
>>> The _normalizer at this point is ALWAYS ERDefaultTagNormalizer
>>> 
>>> Thanks
>>> James
>>> 
>>> 
>>> On Oct 16, 2012, at 9:34 AM, Mike Schrag <[email protected]> wrote:
>>> 
>>>> add some debug to taggableentity's splitTagNames method and see if it's 
>>>> getting in there … it seems like it should be. you should be able to trace 
>>>> through addTagNamed pretty easily.
>>>> 
>>>> did you verify that aTag.name() is actually case-preserved on the way in? 
>>>> maybe something already lowercased it by the time it got there?
>>>> 
>>>> On Oct 16, 2012, at 10:22 AM, James Cicenia <[email protected]> wrote:
>>>> 
>>>>> Hmmm,
>>>>> 
>>>>> I thought that is what I was doing:
>>>>> 
>>>>>     public WOActionResults droppedTagOnCircle(){
>>>>>           theTagCircle.taggable().taggableEntity().setNormalizer(new 
>>>>> TOSTagNormalizer());
>>>>>           theTagCircle.taggable().addTagNamed(aTag.name());
>>>>>           theTagCircle.editingContext().saveChanges();
>>>>>           
>>>>>           return null;
>>>>>     }
>>>>> 
>>>>> My custom normalizer didn't seem to get called.
>>>>> 
>>>>> Regards
>>>>> James
>>>>> 
>>>>> On Oct 16, 2012, at 8:35 AM, Mike Schrag <[email protected]> wrote:
>>>>> 
>>>>>> I don't think there's anything to fix -- what you're describing sounds 
>>>>>> like exactly the point of the default tag normalizer (that it 
>>>>>> lowercases). If you want it to not normalize, just return a custom 
>>>>>> normalizer from your taggable entity's normalizer() method that hands 
>>>>>> back the tag without modification.
>>>>>> 
>>>>>> On Oct 16, 2012, at 8:53 AM, James Cicenia <[email protected]> wrote:
>>>>>> 
>>>>>>> Anyone know if the tag normalizer was fixed in Wonder in ERTag?
>>>>>>> 
>>>>>>> 
>>>>>>> I really need to save what the user types in without lowercasing it.
>>>>>>> 
>>>>>>> Thanks
>>>>>>> James
>>>>>>> 
>>>>>>> _______________________________________________
>>>>>>> Do not post admin requests to the list. They will be ignored.
>>>>>>> Webobjects-dev mailing list      ([email protected])
>>>>>>> Help/Unsubscribe/Update your Subscription:
>>>>>>> https://lists.apple.com/mailman/options/webobjects-dev/mschrag%40pobox.com
>>>>>>> 
>>>>>>> This email sent to [email protected]
>>>>>> 
>>>>>> 
>>>>>> _______________________________________________
>>>>>> Do not post admin requests to the list. They will be ignored.
>>>>>> Webobjects-dev mailing list      ([email protected])
>>>>>> Help/Unsubscribe/Update your Subscription:
>>>>>> https://lists.apple.com/mailman/options/webobjects-dev/james%40jimijon.com
>>>>>> 
>>>>>> This email sent to [email protected]
>>>>> 
>>>>> _______________________________________________
>>>>> Do not post admin requests to the list. They will be ignored.
>>>>> Webobjects-dev mailing list      ([email protected])
>>>>> Help/Unsubscribe/Update your Subscription:
>>>>> https://lists.apple.com/mailman/options/webobjects-dev/mschrag%40pobox.com
>>>>> 
>>>>> This email sent to [email protected]
>>>> 
>>> 
>>> _______________________________________________
>>> Do not post admin requests to the list. They will be ignored.
>>> Webobjects-dev mailing list      ([email protected])
>>> Help/Unsubscribe/Update your Subscription:
>>> https://lists.apple.com/mailman/options/webobjects-dev/mschrag%40pobox.com
>>> 
>>> This email sent to [email protected]
>> 
> 
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list      ([email protected])
> Help/Unsubscribe/Update your Subscription:
> https://lists.apple.com/mailman/options/webobjects-dev/mschrag%40pobox.com
> 
> This email sent to [email protected]

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to