HighTechTalks DotNet Forums  

Hiding the public members of a class without modifying the CLASS

Dotnet FAQs microsoft.public.dotnet.faqs


Discuss Hiding the public members of a class without modifying the CLASS in the Dotnet FAQs forum.



Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old   
Brahmam
 
Posts: n/a

Default Hiding the public members of a class without modifying the CLASS - 01-03-2006 , 02:14 AM






HI,

Suppose i have the requirement that i want to hide the pubilc members
of a class without modifying the code inside the class

Example :
class A
{
public foo1();
public foo2();
public foo3();
public foo4();
public foo5();
public foo6();
public foo7();
public foo8();
public foo9();
public foo10();
}

I made this class as a DLL and i have given this DLL to the user. Now the
requirement is, For the user only 7 public methods has to be exposed and the
remaining 3 has not , for that what to do , I am not allowed to change the
code inside the class (But , i can implement this class), can anyone give me
the solution for this.

Thanks in advance,
BR.





Reply With Quote
  #2  
Old   
Sachin Saki
 
Posts: n/a

Default RE: Hiding the public members of a class without modifying the CLASS - 01-06-2006 , 06:27 AM






Hi,

Once you declare the methods identifier as PUBLIC they will accessible to
everywhere.

I think what you are trying to do is not possible by this implementation.
you can achieve this by explosing another class if it can be inherited by
that DLL. In this class make methods public you want to explose and make
other methods private that you don't want to explose to user and then give
that DLL to user.

Regards,
Sachin Saki
..NET Developer, Capgemini - INDIA

"Brahmam" ने लिखा:

Quote:
HI,

Suppose i have the requirement that i want to hide the pubilc members
of a class without modifying the code inside the class

Example :
class A
{
public foo1();
public foo2();
public foo3();
public foo4();
public foo5();
public foo6();
public foo7();
public foo8();
public foo9();
public foo10();
}

I made this class as a DLL and i have given this DLL to the user. Now the
requirement is, For the user only 7 public methods has to be exposed and the
remaining 3 has not , for that what to do , I am not allowed to change the
code inside the class (But , i can implement this class), can anyone give me
the solution for this.

Thanks in advance,
BR.






Reply With Quote
  #3  
Old   
Brahmam
 
Posts: n/a

Default Re: Hiding the public members of a class without modifying the CLASS - 01-10-2006 , 02:48 AM



Hi sachin thanks for ur reply,

But if I create the instance of the base class I can use all the 10 methods
it has to be restricted .If I have created the instance of this base class
or any sub classes derived from this dllclass it will not allow u to use all
the methods

If u have any idea plz get back to my mail

Thanks in advance

BR




"Sachin Saki" <SachinSaki (AT) discussions (DOT) microsoft.com> wrote

Quote:
Hi,

Once you declare the methods identifier as PUBLIC they will accessible to
everywhere.

I think what you are trying to do is not possible by this implementation.
you can achieve this by explosing another class if it can be inherited by
that DLL. In this class make methods public you want to explose and make
other methods private that you don't want to explose to user and then give
that DLL to user.

Regards,
Sachin Saki
.NET Developer, Capgemini - INDIA

"Brahmam" ?? ????:

HI,

Suppose i have the requirement that i want to hide the pubilc
members
of a class without modifying the code inside the class

Example :
class A
{
public foo1();
public foo2();
public foo3();
public foo4();
public foo5();
public foo6();
public foo7();
public foo8();
public foo9();
public foo10();
}

I made this class as a DLL and i have given this DLL to the user. Now the
requirement is, For the user only 7 public methods has to be exposed and
the
remaining 3 has not , for that what to do , I am not allowed to change
the
code inside the class (But , i can implement this class), can anyone give
me
the solution for this.

Thanks in advance,
BR.








Reply With Quote
  #4  
Old   
Francois Beaussier
 
Posts: n/a

Default Re: Hiding the public members of a class without modifying the CLASS - 01-10-2006 , 07:00 PM



Hi,

you can use encapsulation :

class A_User
{
private A a = new A();
public foo1() { a.foo1(); }
public foo2() { a.foo2(); }
public foo3() { a.foo3(); }
public foo4() { a.foo4(); }
public foo5() { a.foo5(); }
public foo6() { a.foo6(); }
public foo7() { a.foo7(); }
}

The user will use A_User and he will be able to call method foo 1 ot 7.

--
Francois Beaussier

"Brahmam" <nallapati (AT) inooga (DOT) com> a écrit dans le message de news:
OVJmcsbFGHA.2300 (AT) TK2MSFTNGP15 (DOT) phx.gbl...
Quote:
Hi sachin thanks for ur reply,

But if I create the instance of the base class I can use all the 10
methods it has to be restricted .If I have created the instance of this
base class or any sub classes derived from this dllclass it will not allow
u to use all the methods

If u have any idea plz get back to my mail

Thanks in advance

BR




"Sachin Saki" <SachinSaki (AT) discussions (DOT) microsoft.com> wrote in message
news:3C7E6078-E246-4ED9-B63F-14D5DED69812 (AT) microsoft (DOT) com...
Hi,

Once you declare the methods identifier as PUBLIC they will accessible to
everywhere.

I think what you are trying to do is not possible by this implementation.
you can achieve this by explosing another class if it can be inherited by
that DLL. In this class make methods public you want to explose and make
other methods private that you don't want to explose to user and then
give
that DLL to user.

Regards,
Sachin Saki
.NET Developer, Capgemini - INDIA

"Brahmam" ?? ????:

HI,

Suppose i have the requirement that i want to hide the pubilc
members
of a class without modifying the code inside the class

Example :
class A
{
public foo1();
public foo2();
public foo3();
public foo4();
public foo5();
public foo6();
public foo7();
public foo8();
public foo9();
public foo10();
}

I made this class as a DLL and i have given this DLL to the user. Now
the
requirement is, For the user only 7 public methods has to be exposed and
the
remaining 3 has not , for that what to do , I am not allowed to change
the
code inside the class (But , i can implement this class), can anyone
give me
the solution for this.

Thanks in advance,
BR.










Reply With Quote
Reply




Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.